>
> Hello all,
>
> I'm hoping to move our next-generation products to a StrongArm/embedded
> Linux platform but have met resistance from some who contend that
> Linux cannot be used as an RTOS. I understand that Linux cannot
> complete directly with the likes of a real RTOS, say from Pharlap,
> but if your RTOS requirements are minimal, the advantages of
> having an open-source based system, with the huge amount of
> software available, outweigh the RTOS deficiencies of Linux.
>
> With an embedded Linux, I assume you can still service your
> interrupt routines without having to make system calls. Please
> correct me if I'm wrong.
>
> So, any thoughts about Linux as an RTOS?
>
Good question, large topic.
First, define RTOS. What do you need to do, and how much hardware
do you have to do it? More specifically, are you talking hard real time
(i.e. if sensor a goes < 4 volts, close valve b within 0.05 seconds or
there will be an explosion) or soft real time (monitor this signal and
send me e-mail, or an SNMP trap, if it goes out of range).
As for Linux, you can write device drivers to respond to interrupts,
but there times when interrupts are turned off, and I don't think
there are any guarantees about the max time interrupts are off.
There is a RTLINUX that basically is a timy RT kernel that runs
Linux in its spare time. Sound's like this is close to what
you are after. A lot of people are very impressed with QNX,
although I've never used it.
Another issue is size. The Linux kernel, even with stuff stripped
out, is measured in hundreds of kbytes, rather than the svelte
RTOS's such as pSOS or VRTX.
The point? Look at what your application MUST do, what you would
like it to do, and how much size/space/watts/dollars you can spend
on the hardware to do it. Sometimes you need a rack full of VME
cards and pSOS+M to do the job, sometimes you can get buy with a $250
single board computer and Linux. I've used both.
Feel free to provide more specifics about your application (if possible),
I'm sure many people on the list would be interested.
-- cary