Novell to Launch Quick-Response Linux
Krishna Dagli writes to mention a C|Net article about Novell's upcoming real-time Suse Linux Enterprise product. From the article: "Real-time operating systems can respond to external events within a guaranteed time frame, a feature that mainstream business computing doesn't generally require but that's necessary for some areas, such as aircraft radar. But in a move that indicates the flexibility of Linux, Novell plans to begin selling the real-time variant of the open-source operating system next month."
It's actually not a matter of speed. A realtime OS guarantees that a given external event will trigger a response in no more than x milliseconds. This might be slower (or faster) than a non-realtime OS, but it's not the point. There are a lot of applications where things must be attended within a given timeframe (radars, as mentioned, industrial automation, nuclear plant safety devices, etc.). Achieving this this is not a trivial excersice.
This is not about the response time after you click on your Office document - and in fact, the (huge) added complexity of a RTOS is nor needed nor desired in most desktop and even enterprise uses.
A characteristic common of multi-tasking RTOSs is that timeslices are very small, and context switches extremely frequent, to help assure that apps will be able to do something in the required timeline, which is not necessarily a small amount of time, but in many applications it is a short time. There are more complexities, but the bulk of the 'overhead' mentioned in the GP is probably the high percentage of time spent doing context switches rather than useful work. The key word here is multi-tasking RTOSs, you describe cases in which the OS is largely a base for a single application that does everything itself. This is very common in the RTOS world, but their do exist areas where pre-emptive multi-tasking RTOSes fulfill a need....
Of course, your point is correct too, a requisite step with respect to this particular aspect of a RTOS is generally considered to be doing whatever it takes to make the context switch as fast as possible. In a server or desktop OS historically context switches aren't nearly as optimized as the solution can be for most applications to lengthen the timeslice. Server platforms particularly tend to have long timeslices as their activity isn't highly interactive, and the percentage of the time the system can do useful work is more important than each application being able to do their thing in a timely manner. On a desktop OS, timeslices being shorter is helpful (fairly recently a lot of debate and configurability happened in linux with respect to this), as multiple applications are more directly interacting with users. With a handful of processes it isn't really noticeable but as it scales up the delays get into perceptible fractions of a second. Having a smooth interface is a bit more along the lines of a design point of RTOS, so it makes sense. Anyway, there is a penalty paid, but the timeslices for satisfying human interaction requirements may still be orders of magnitutde higher than those required for RTOS applications, depending on what's going on.
XML is like violence. If it doesn't solve the problem, use more.