Linux, VxWorks and pSOS+
The following is another useful comparison taken from the Yahoo board.
by: edski42 (51/M/Phoenix AZ) 12/10/1999 6:41 pm EST Msg: 6382 of 6411 Each of these OSs have slightly different but very important assumptions on which they are based. As such, everything they do and are capable of doing, is flavored by those assumptions.
Linux, with its Unix-inspired architecture, is largely focused on providing fair and equitable services to users. In environments where fairness is not important, or where some things are inherently more important than others (which is more important, sounding an alarm that the runway is approaching and the landing gear is not down, or flushing the toilet in the lavatory?), Linux can be coerced to do the right thing, but it does take an effort by the designer to "undo" the automatic operations normally performed by the OS. (Also, the baggage of that code--"doing it" in Linux and also "undoing it" in the application--are both carried in the final product.)
VxWorks, on the other hand, retains a fair amount of Unix-like-ness but provides a "preemptive" kernel and several key "hooks" to deal with what Linux considers catastrophic errors. (For example, if you have a pacemaker and the computer realizes it is having a problem, what should the pacemaker do? RTOSs provide the hooks so designers can attempt to deal with these types of situations. Linux provides few hooks and makes this difficult to handle.) With VxWorks (and pSOS+), designers get to specify lots of very important things that Unix (and Linux) make up "on the fly." VxWorks (and all RTOSs, for that matter) presume a much more comprehensive design. That's why they show up in critical applications like pacemakers and flight control systems.
pSOS+, my area of expertise, incidentally, moves still further away from Unix, far enough, in fact, that I'd say the design (pSOS+ was written in 1986, the older pSOS in 1982) goes to some effort to avoid the comparison. (This sometimes works counter to the designer's best intentions.) More power, and hence, responsibility, is shouldered by the designer. I've heard others say that VxWorks provides more features but sometimes not the ones desired. Those same folks say that pSOS+ provides a smaller number of features, all of which are needed, but which must then be used in combination to get the desired effect.
I don't have hard numbers to do size comparisons but, based on experience I feel confident in saying that finished products using Linux tend to be the largest and, therefore, have the highest hardware product costs. Using VxWorks results in a smaller (cheaper to produce) final product, and pSOS+ results in the smallest and cheapest. For something to be produced in the X-million quantity range, a few cents of product cost is very important. Contrary to what you may have heard, size DOES matter! The marketeers might argue with me but, IMHO, pSOS+ tends toward very high volume products, VxWorks tends toward not-quite-so-high products, and Linux will show up in products with a large amount of functionality because there's a relatively larger amount of hardware needed in the first place. Added to the hardware costs, however, are the licensing fees for the RTOSs. (This is where the sale of one RTOS over another gets really interesting, and extremely competitive.)
Question: How many embedded computers are there in that PC you are using to read this message? Answer: there's one in the keyboard, another in the video card, a third in the sound card and probably a fourth one in the network card. Some machines will have quite a few more, of course, but for every PC and Intel/AMD chip that is sold, there are several embedded processors going along for the ride.
Personally, I'm in this for the long haul. Go embedded, go WIND! |