Requirements for Embedded Linux 79
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."
Re:that would suck if i got first post (Score:1)
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.
One disadvantage of Embedded Linux -- Hackability? (Score:3, Insightful)
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.
Re:One disadvantage of Embedded Linux -- Hackabili (Score:2)
Embedded Linux (Score:2, Interesting)
An important concern they left out (Score:4, Interesting)
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
Re:An important concern they left out (Score:1)
If it is a hardware company, why should you be concerned that more software or a different OS would be ported to your hardware? More software or another OS could only mean more users.
Re:An important concern they left out (Score:3, Insightful)
When it comes to embedded systems, most companies dont easily fall into hardware or software, they produce solutions that unify hw and sw. Since most hardware can easily and legally be reverse-engineered and produced in some third world country, the only thing makers of embedded systems have standing between being successful and dying from inability to compete in a commodity market is their software.
It's really very similar to Apple's market position.
Re:An important concern they left out (Score:1)
Yes, you're right. It's perfectly feasible to build an embedded asystem with a GPL'd OS and a proprietary and/or differently liscensed application. I was replying more to what I keep seeing as a common misconception about the nature of embedded system producers.
Re:An important concern they left out (Score:1, Funny)
Re:An important concern they left out (Score:1)
Re:An important concern they left out (Score:3, Insightful)
But the question I draw from this is: why not relax the GPL restrictions a bit for embedded applications?
To which, I'm afraid, the only reply is: "Why not go write your own closed kernel - or actually pay money for one someone else has already written ?"
The whole point of the GPL is that, in return for the millions of lines of code you receive, you are expected to return the few hundred/thousand you produce. If you don't want to share, no-one is making you.
I am so sick of this troll (Score:1)
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.
Re:I am so sick of this troll (Score:1)
Windows XP Embedded? (Score:2, Funny)
Did your dev team look into using Windows CE.NET [microsoft.com] or Windows XP Embedded [microsoft.com]?
Re:An important concern they left out (Score:1)
everyone who's ever submitted patches to the linux kernel
which were licenced under the GPL (almost all) would have to give permission
, not even linus himself could make that decision. Why not just make any changes you
need localized to a seperate kernel module? You could then have just the module under a proprietary
license and keep the rest of linux open, and not break a single copyright law.
Re:An important concern they left out (Score:1)
intellectual property and embedded linux (Score:3, Insightful)
Re:An important concern they left out (Score:3, Insightful)
qt-embedded / zaurus (Score:1)
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
Read this! (Score:2, Informative)
Re:Read this! (Score:1)
you really don't contribute to the discussion...
(that m$ document sucks ass. half of what it says are lies. if i knew more i'd say that all of it is lies)
This for example (Score:1)
Re:Read this! (Score:1)
Get a clue (Score:1)
It has lots of disadvantages and no advatanges of any merit.
Where you trying to be funny ?
Re:Read this! (Score:2)
Windows XP Embedded is the most reliable version of Windows ever.
So, tell me - where's Windows on Netcraft's uptime chart? http://uptime.netcraft.com/up/today/top.avg.html [netcraft.com]
Oh, that's right - WINDOWS ISEN'T EVEN ON THE LIST
Re:Read this! (Score:1)
Operating systems that do not provide uptime information include;
<snip>
* NT3/Windows 95
* NT4/Windows 98
The only Windows for which netcraft can track uptime is Windows 2000. Now if only windows 2000 had already existed for long enough to be able to appear in the list...
Oh well... Go linux!
Re:Read this! (Score:1)
whats this $ticks command in mIRC that all the script kiddys use?
and the ticks api?
I'm confused, really confused.
Is it possible for you to clear this up for me?
I've read the faq and it seams it's netcrafts problem.
Re:Read this! (Score:1)
Well, to some degree. Netcraft doesn't have the code to automatically crack the webserver and execute "uptime" or something equivalent on the remote host. Shame on them!
Instead Netcraft uses a method that analyses the IP packets send back - but that only works for the few OSes with TCP/IP stacks which provide enough information that can be used to calculate the systems uptime - e.g. for those stacks which use a function of the uptime to generate the initial TCP sequence number.
Re:Read this! (Score:1)
Re:Read this! (Score:1)
Re:Read this! (Score:1)
According to the netcraft FAQ:
Additionally HP-UX, Linux, Solaris and recent releases of FreeBSD cycle back to zero after 497 days, exactly as if the machine had been rebooted at that precise point. Thus it is not possible to see a HP-UX, Linux or Solaris system with an uptime measurement above 497 days.
Advice (Score:1)
Re:Advice (Score:2, Informative)
BusyBox [busybox.net] for basic embedded versions of common linux apps (e.g. init, cp, sed, etc.)
KDrive [jussieu.fr] a tiny X server from XFree86
Galeon [sourceforge.net] for a fairly small browser (there are some other smaller ones in development (for example Skipstone [muhri.net] and Dillo [sourceforge.net])
What I would do is compile a stripped down kernel, use busybox for most system apps, and have your init scripts call the tinyX server and then instead of using a window manager have the startx script start galeon in full screen mode using tabs instead of separate windows for popups. The only difficult part may be getting mozilla or galeon compiled because of the gtk requirements) You could try the Xlib mozilla port perhaps.
For a little bit of info on how I have done a similar project take a look at my linux on a floppy [umd.edu] page.
Re:Advice (Score:2)
New realms for you software monkeys... (Score:1)
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
Embedded Linux in five easy steps... (Score:1)
Re:Embedded Linux in five easy steps... (Score:2, Insightful)
I've just completed a 3 month development contract for an automotive company using embedded linux, and NO WAY is it that simple. Embedded Linux has a long way to go before it can compete with other systems, most notably in the areas of configuration management (the kernel configuration process for embedded targets is particularly poor) and device drivers (Linux in the embedded world badly needs a Hardware Abstraction Layer). On some popular embedded platforms (think Motorola, and telecoms), it took a major kernel revision (2.2 to 2.4) to fix problems with the UART driver.
The fact that the two most successful embedded architectures have forked their own kernels suggests that Embedded Linux is still quite badly fragmented, and no-one designing a system from scratch wants to see that.
Jon.
OT: OMG i just saw a microsoft add on slashdot (Score:1)
What about hardware? (Score:1)
Where would the best place to look for such devices?
Sorry, it hasn't happened yet (Score:3, Interesting)
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.
Re:Sorry, it hasn't happened yet (Score:1)
Embedded vs. "desktop" perspectives (Score:5, Informative)
My company recently went down the path of evaluating several embedded linux suppliers, including Hard Hat Linux [hardhatlinux.com], LynuxWorks [lynuxworks.com], RTLinux [fsmlabs.com], 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 [windriver.com], Green Hills [ghs.com], Keil [keil.com], QNX [qnx.com], et al -- see Embedded Systems Programming magazine [embedded.com] for a pdf summary of embedded OS providers [cmpnet.com]). 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
Rather broad view of embedded systems (Score:2, Insightful)
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.
Re:Rather broad view of embedded systems (Score:1)
When I see inquiries about using Java in the comp.arch.embedded newsgroup I cringe*. It would seem that there needs to be some distinction made between traditional embedded systems and this new class of device that shares some characteristics with "PC's".
*not affiliated with Bob Cringely or the Columbia Broadcasting System.
Embedded Linux Presentations (Score:4, Informative)
At our last meeting [lugod.org], a couple of cool folks from BlueMug [bluemug.com] in Berkeley came and talked about an embedded Linux prototype they built for a client (photos [lugod.org]). Their presentation slide is also online here [lugod.org] (2MB PDF).
At the meeting before that [lugod.org], Rob Wehrli of Arizona Cooperative Power [azpower.com] came to talk about Clinux (photos) [lugod.org]. His presentation is online [azpower.com], too.
Enjoy!