Linux Now Top Choice Of Embedded Developers
An anonymous reader writes "According to an article at LinuxDevices.com, the latest market research data from Venture Development Corp. shows that Linux is now firmly in first place as the OS of choice for smart gadgets and embedded systems. VDC's latest data indicates that Linux now accounts for 15.5% of embedded projects, beating out Microsoft's WinCE (6%) and XPe (5%), and Wind River's VxWorks (10.3%)."
Linux success is almost always measured in the desktop and/or server markets, and very rarely in the embedded market. It's refreshing to see an article showing the strength on Linux in a market that has a lot of potential but little of the glamour.
Putting an OS on a small device is a task that tends to require a lot of tweaking... when you're making it small, you tend to make a lot of compromises, and small devices tend to be much more diverse than personal computers and servers (well, duh).
...Or the one written and managed by a single company who, yes, has talented developers, but none of whom are on-site working with you?
So -- what OS is better suited to this kind of application? The open source one with plenty of developers out there, tweaking it as we speak, where the developers of your hardware can be shaping the embedded OS as they build the prototype?
Not that I'm the only one saying this, of course, but this is a great chance for the Linux model to shine.
With any luck, Linux will soon be ported to run on full fledged x86 desktop computers!
He who laughs last is stuck in a time dilation bubble.
Last time I checked, TRON was the most used embedded OS. Am I missing something?
My site
Tron is probably the "other" and "no formal os".
Of course tron is also mostly used in japan, if they didn't count japan then that would also explain it.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
There are as yet unresolved issues with the use of binary software with GPL software in general and linux specifically, despite linus' assurances that userspace code doesn't require GPL license compatibility and that he won't enforce that section of the GPL. Linus is using the GPL license as written by the FSF, albeit fixed to V.2 and with some specific modifications. They (linus and the FSF) disagree on on the details of whether or not using GPL-licensed header files forces the software using them to be be under a GPL-compatible license. Even linus admits there are grey areas and his interpretation has been debated. Until this matter is resolved definitively (probably in court), I don't want to place my company at risk of being forced to release code that we do not want to release, simply because we compiled our software for linux.
What we found, is that the GPL, LGPL and other FSF licenses are very problematic when dealing with the control of code(proprietry or otherwise). The GPL licensing terms are very strict and dangerous in terms of source code-ownership vs binary code-distribution and legal obligations.
The FSF cannot of course, enforce the GPL for software they don't own the copyright for. However, the licensing conditions and restrictions of the GPL automatically come into effect without much influence from the actual copyright holders. We're left to the whims of copyright owners and their good word to decide what is considered a breach and what is 'tolerated'. As we see more GPL software being used by companies with proprietry code, I think we'll see a nasty side of the GPL rear its head as enforcement starts to kick in from different areas. Boundaries of legality are constantly tested, when they are wide and filled with grey.
Just because you don't get charged with doing something illegally as you do it, that doesn't mean that you can't get prosecuted afterwards, if someone feels like going after you.
click-clack, front and back. I'm not moving this car otherwise.
And yet, if I went out to try and buy a mobile phone which runs Linux for the geek value, I wouldn't be able to find one. Maybe it's in the wrong embedded marketsHowever, many are programmed in Java...Personally, I'd like to hack mine for the geek value.
...it is by invisible hand of the market. Development costs for embedded on Linux are lower, no matter what FUD about GPL are Microsoft vassals posting on Slashdot. Because embedded incarnations of Linux are very consistent with desktop ones.
.net stuff) for PocketPC using WinCE emulator in Windows XP. With a real pain, because running emulator took 98% of desktop CPU doing nothing. It was worth a new computer, two months of her work and many grey hairs to complete the task.
An example from real life:
My girlfriend wrote some custom app (database client frontend +some
I replicated her effort on the identical hardware (HP iPaq, but with Linux flashed in) in three days. The trick I used was a http server running inside iPaq (sic!), calling local python scripts to query remote database and generate html content to local browser.
Guess, from these two implementations, which one is easier and/or cheaper to support?
Can you, Microsoft drones, stuff IIS or any existing COM/DCOM components you already payed for on Win32 into some WinCE device?
There you are, staring at me again.
OTOH most of the mini routers for wireless/cable/DSL use are Linux based.
I'd expect that depending on what category of device you look at, there could be an entirely different embeded OS that is most popular if not just more popular than Linux.
A firewall can not protect you from yourself. Turn off what you do not need. Do not use the firewall to do your work.
Personally, I wanted a Linux phone, as it would have meant some semblance of power, without the niggling thought in the back of my mind that it was going to crash the next time I got an incoming call. I own a Linux router, which has already had its warranty broken via third-party firmware. I had to sacrifice the Linux PDA for something better supported, but I think I might repair that in a couple of years if things improve.
We're seeing a nice insurgence in the set-top box arena, too. I bet that by the time I need to actually upgrade from my Xbox, there will be a nice, even more free solution available off the shelf. :-)
Karma: It's all a bunch of tree-huggin' hippy crap!
Nokia and others ship millions of Symbian OS smartphones, yet somehow they are not showing up on the graphs..
As for the parent itself, I think the real problem is not nearly as serious as the parent makes it out to be (IANAL). Of course, you may have legal difficulties if you want to make binary-only kernel modifications or kernel modules, but user-space programs should be completely unaffected since they only access the kernel via system calls, thus covered by the exception in the kernel license (since it is in the license, the developers probably agree with Linus, whatever the court thinks). Therefore, in most cases you can just put your proprietary bits into user space and only the kernel modules/modifications must be released in source form. Well, if you put everything inside the kernel itself and still want to keep things proprietary, you probably do not have much chance since this is probably a derivative work by any interpretation (especially if you don't use modules), but the kernel license had never been designed to allow for such use anyway.
Actually I do think the FSF interpretation of derivative work is too wide. They may have a good intention, but I don't think it is practical to make a program a derivative work simply by linking to a C shared library --- the resulting executable often does not contain anything substantial that is related to the library (mostly just structure offsets and maybe versioning attributes about referenced symbols)! This creates much uncertainty, and if the court disagrees with this, it would be very painful for companies like MySQL AB that more or less rely on this. I think the GPL should have limited its version of "derivative work" to things that are clearly derivative works by the court's interpretation, such as those containing substantial amounts of data (source code, binary code or otherwise) that comes from the library, and LGPL should not have existed, GPL-with-linking-exception should only be meaningful for libraries that are usually statically linked. The FSF is IMHO too ambitious ("we want to create an advantage for free software since only them can link to libreadline!") in this case, and it seems to be too late to change now.
Just to clarify the statistic so we are talking about the right thing, since the actual posting and the LinuxDevices articles seemed pretty vague to me. ("Linux is 15%! Windows is 6%. Yay!")
About 27,000 developers on their mailing list (which targetted embedded developers) were given web-based questionnaires to answer. This figure is for "what OS are you using for your current project" and the statistic is counted by percentage of answers.
Chart here.
More info at VDC's website.
Ok, now back to the regularly scheduled programming...
...is that IBMs lawyers probably knows a lot more about the GPL than your lawyers, and they seem to think it is okay. That leads me to believe that both your post and your link are to people that desperately try to create ambigiuity where there really is none, at least none of significance.
For one, you should sack your lawyers if they ever claimed you under any circumstances would be forced to release any source code. In a court of law, you might be liable for damages if you violated the licence, but you will never have to open your code. Someone might offer it as a settlement offer, but that is completely voluntarily.
Kjella
Live today, because you never know what tomorrow brings
So -- what OS is better suited to this kind of application?
Hate to play the role of the troll here [better say goodbye to those Karma points], but Linux has pretty lousy numbers for an embedded OS. Heck - "pretty lousy" is being generous - I've never seen Linux come in anywhere but dead last in an RTOS review.
In fact, the dirty little secret of the embedded OS marketplace is that WinCE is a rather solid, stable, and flexible platform:
What's more, full-blown x86 Linux ain't exactly the cat's meow, either. People laugh at M$FT for their problems with WinFS & Longhorn, but that rusting, archaic, monolithic kernel, called "Linux," is a disaster waiting to happen.Of course, some of the problem here may be semantics - people seem to think that if you build a SBC/PICMG platform, load it with "Linux," and call it a "firewall," then you're doing realtime work. Well, guess what - you're not. Realtime is an OS in a USAF jet, flying at Mach 3, reacting to a gazillion interrupts per second, trying to keep the pilot from both killing himself and from being killed by that SAM missile on his tail.
That's when you call in the grown-ups and the grown-up RTOSes.
Anyway, you can argue about what the words "embedded" and "realtime" mean, but, when the rubber hits the road, Linux is a very poor substitute for the real thing.