Requirements for Embedded Linux
An anonymous reader sent in: "As Embedded Linux becomes established as a solid alternative to many proprietary OSes and RTOSes, demands on embedded Linux developers and providers are increasing. This detailed technical article by Nicholas McGuire sketches the top requirements for Embedded Linux systems including considerations of user interface, network capabilities, security issues, resource optimization, performance requirements and issues, and compatibility and standards issues."
2) Take Linux to my place
3) Look lovingly into Linux's eyes and tell Linux its the only one for you
4) Give linux a back massage.
Bam, but be careful some people go to be with Linux and wake up next to FreeBSD.
One thing that I think may detract folks from using Linux as an embedded OS is its hackability. For example, TiVo is now hacked 10 ways from sunday. As long as it's adding hard drives and so on, the TiVo folks have been pretty cool about it, but when the encryption scheme for storing recordings was hacked, that leaves them open to legal problems.
While proprietary EOS's are more difficult (for many of the reasons outlined in the article), they can be much more secure (in the weak sense of security through obscurity) than Linux.
Lots of info on Embedded Linux at the Embedded Linux Consortium
I used to work closely with a development team that made the transition from a proprietary (and, may I add, unmaintainable and unreliable) embedded OS to Linux. Though some of the concerns in the article did come up, especially speed and size issues, those didn't hurt us much. After all, we could afford a better processor and more memory with the money we saved on royalties and maintenance expenses - these were substantial.
Unfortunately, if the many features of Linux and the transition from assembler to C didn't hurt us, the licensing did. Things went very smoothly until we needed to make some big changes to the kernel to accomodate a newer version of our hardware. At that point, there was a schism in the group: some of the developers wanted to change the kernel and release the product without source (the "who would find out?" crowd) and the rest of us knew that Linux was not going to fit our needs anymore unless we wanted to give our work away to competitors.
Well, the "who would find out?" crowd won the first round, and because of release deadlines we "slipped" the kernel changes into the next version of the product. And nobody knew. Except one of us told the legal department about what happened and they became very agitated.
Now our software runs on embedded NetBSD. It wasn't quite as robust as embedded Linux but it works well and we really can't complain. Transitioning to a new OS took a lot of effort but it was a necessary evil. After all, we couldn't risk getting sued out of existence to save a little money.
But the question I draw from this is: why not relax the GPL restrictions a bit for embedded applications? It seems like this area of the market will never be dominated by Linux until companies can stop fretting about licensing problems and start concentrating on coding instead.
-Name withheld so I don't get canned
There is quite a bit of info at http://more.sbc.co.jp/slj/docandtool.asp
It's mostly about the dev. version of zaurus, but I think it applies to others. enjoy
"Take revenge, shit on a bird"
-bumper sticker
Its a really good read!
I'm working on a project and I would need to make a Linux distro that loads up a simple, locked, X screen with a custom made web browser. How would this be most easily done? This is in many ways like an embedded Linux environment...
My gouess is that's the reason why 90% of Mac and Win users is using pirate software, that's not legally bought
$ rm -R /
/.mod --1 Anonymous Coward
$ wince.exe
$
no it's reverse psychology. i just wanted to get a first post without wasting precious karma. moderators, just like toddlers are extremely susceptible to this kind of manipulation.
witness the following:
karma whore: "i know i'm wasting my karma on this post, but i just have to say:"
moderator: "wow, what a guy, standing up for what you believe despite personal sacrifice. i think i'll mod you up to +5 insightful."
the point is, slashdot moderators are dumb. that's all i wanted to say.
Interested in learning Chinese or Japanese? check out Chinese/Japanese-English Dictiona
Here is where the beauty of us Electrical/Computer engineers come out. When you get into funky/new hardware, you need us guys.
What I propose that there should be a standardized set of low-level functions, with charts telling which platforms take how many cycles for each function. In this way, with just one layer, you could make truly portable code. Like a . In this way, the EEs could figure out how to make a set of hardware conform to a universal interface.
For instance, Motorola and Intel have two different Opcodes to ASCII Adjusted Addition. Motorola has AAA, Intel has something else (I forget right now). If you could make something at the very end change it, you could have code go from one device to another without much of a tweak. I realize that that is sorta the role of a compiler, but it needs to be ramped up. Linux on ANY device. Then we could focus on making it perdy.
Just my $.02.
Joe
Truth is here.
Important Stuff:
Please try to keep posts on topic.
Try to reply to other people comments instead of starting new threads.
Read other people's messages before posting your own to avoid simply
duplicating what has already been said.
Use a clear subject that describes what your message is about.
Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be
moderated. (You can read everything, even moderated posts, by adjusting your
threshold on the User Preferences Page)
You would have to be really, _REALLY_ stupid to consider embedded windows.
It has lots of disadvantages and no advatanges of any merit.
Where you trying to be funny ?
I think TiVo sees the hackability of its systems to be a selling point. Maybe if the company who made the iOpener (anyone remember thier name ?) had embraced the those who wanted to extend the usabilty of thier machines, they might still be around.
"Our products just aren't engineered for security,"
-Brian Valentine,VP in charge of MS Windows Development
This stupid rant comes up every time
4 20 12 424 3&mode=thread
someone mentions embedded linux.
http://slashdot.org/article.pl?sid=01/12/18/192
http://slashdot.org/article.pl?sid=01/12/05/17
Please look at these two postings and
you will find this exact same response...
word for word.
Step one, configure and install the Linux kernel. Step two, configure and install uClibc, step three configure and install BusyBox. Step four, setup the bootloader (depends on architecture). Step five, reboot into a working system...
-Erik -- --This message was written using 73% post-consumer electrons--
Can i trust slashdot for good quality MS bashing now? I dont know ...
Why bother w/ Linux when RHAT has a perfectly
fine GPL'ed real embedded OS???
Did your dev team look into using Windows CE.NET or Windows XP Embedded ?
cpeterso
I'm looking to build a small embedded application (basicly a remote control car), I sure know there are better things to use, however I want to be able to use the parts for other projects.
Where would the best place to look for such devices?
I'm a big retard who forgot to log out of Slashdot on Mike's computer! LOOK AT ME.
"As Embedded Linux becomes established as a solid alternative to many proprietary OSes and RTOSes"
If anything,the embedded Linux hysteria has died down quite a bit. Linux has it's share of problems in the embedded marketplace. Large memory footprint, filesystems that need time to shutdown, interrupt latency to name a few. I work in the single board computer industry and we've seen a sharp decline in the requests for embedded linux support over the last year.
They stab it with their steely knives,
But they just can't kill the beast.
"As Embedded Linux becomes established as a solid alternative to many proprietary OSes and RTOSes..." Thanks for that. I needed a good laugh.
My company recently went down the path of evaluating several embedded linux suppliers, including Hard Hat Linux, LynuxWorks, RTLinux, and others. This evaluation was for an embedded communications platform.
There are many "real-world" issues that will arise when considering Linux instead of some of the more established embedded OS players (WindRiver/pSOS, Green Hills, Keil, QNX, et al -- see Embedded Systems Programming magazine for a pdf summary of embedded OS providers). These real-world issues, which will vary in importance among organizations for various reasons, include:
In short, development in the embedded world tends to have many more complications associated with it. That's not necessarily bad -- in fact it often makes it more technically challenging and thus professionally satisfying -- it's just something that ought to be recognized, acknowledged, and taken into account when OS decisions are being made.
Andy
Thank gods... all those posts about the GPL were driving me nuts. But next time I want lesbian bondage.
I guess the distinctions between embedded and non-embedded systems are disappearing.
Traditionally, embedded systems have a minimal user interface (number pad and 7-segment displays come to mind), minimal ROM and RAM, no mass storage, and hard real-time requirements. For a system like this, Linux (or any desktop, mini, or mainframe OS) seems both inadequate and bloated.
Today's definition of an embedded system seems to be "a portable general purpose computer system". Perhaps we should just call it that rather than use the term embedded system.
Devices running embedded Linux are free as long as you tell everyone where you stole them...
At our last meeting, a couple of cool folks from BlueMug in Berkeley came and talked about an embedded Linux prototype they built for a client (photos). Their presentation slide is also online here (2MB PDF).
At the meeting before that, Rob Wehrli of Arizona Cooperative Power came to talk about Clinux (photos). His presentation is online, too.
Enjoy!
This is common issue in the embedded world and sometimes is the main reason linux isn't used. I have been in a situation where linux was considered and one of the reasons it lost out was that we felt the amount of real intellectual property we could put into it was limited. We make our systems from parts that other vendors could also buy and so our software really makes a big difference. In these cases, we felt that we had to use either a BSD based system or a proprietary one that allowed us rights to change the full source. We are currently with the proprietary model but the licensing charges are keeping us looking BSD again.
-- soldack
"Note: Windows XP Embedded was not tested directly"
Hey! _My_ keyboard doesn't have a 'mu' key!