> I think the choice for embedded OS really depends on what you like
> to do. Of course you are writing the firmware for a coffee maker,
> it would be silly to use an UNIX-like OS. Then you could probably
> write some assembly code to do what you want. But if you are doing
> some Internet appliance with a browser, e-mail, TCP/IP stack, PPP
> or SLIP and a file system, than one would want to take advantage
> of the wealth of free software out there written for UNIX. Then
> the choice is clearly between QNX and LINUX.
And {Free|Net|Open}-BSD and a few others.
> I have used both QNX and Linux in embedded applications. QNX is
> excellent robust OS for embedded applications. The main advantage
> of QNX over Linux is its ability to reboot without corrupting the
> file system and its modularity, as well as Micro-kernel
> architecture. But the size advantage is really not significant. A
> QNX kernel with support for networking, TPC/IP, file system
> etc. comes to about 500K. Not much different from Linux. When you
> consider the cost of QNX, as well as the non-standard Watcom
> compiler, the choice is not that clear.
It's pretty rare to corrupt a Linux filesystem by pulling
the plug on it. There's a mount option for synchronous
I/O that reduces the chances even more (and exacts a
corresponding cost in fs performance).
It's also pretty easy to construct an initrd and have a
script/program that automatically rebuilds a filesystem if
it does get corrupted. (You can store a 'tar.gz' file on an
unused partition and restore whole filesystems from there,
among many options).
It's also pretty easy to implement and use custom
filesystems for Linux. You have plenty of examples to work
from.
> Regards,
> Ivo Zivkov
--
Jim Dennis (800) 938-4078 [EMAIL PROTECTED]
Proprietor, Starshine Technical Services: http://www.starshine.org