A comparison Of Hard Real-Time Linux Alternatives
An anonymous reader writes "This study compares the real-time capabilities of various Linux kernels. It was part of a project to upgrade the control software in water-wave generators at research institutions around the world. The results of the study were used by Akamina for the selection of a new RTOS for the control system upgrade of Canada's largest hydraulics and coastal engineering laboratory, the National Research Council Canadian Hydraulics Centre in Ottawa."
Kernel Traffic has a pretty lengthy summary of some discussion on the Linux Kernel Mailing List about the state of Real Time capability in the kernel as well that I found pretty interesting.
It would have been nice to see how all of these stack up to QNX and other real-time systems.
Meanwhile, I'll keep this article in mind for if I can ever get a better job position than "ASP.net slave".
*is run over by rotten tomatoes*
A full blown RTOS is overkill for many RT applications.
Many RT tasks (like the one used in this article) can be described as:
Wait for IRQ. Do something *NOW*. Wait for IRQ
These tasks can be supported by the rtirq-patch. rt-irq is a very small patch that allows just that (and nothing more). It would be nice to add rtirq to the comparison.
RFC1925
Conclusions
Based on the latency measurements made:
1. Of the options considered, only Linux 2.4 with RTAI meets the latency requirements for a real-time 100-Hz control system
2. Only Linux 2.4 with RTAI provides what could be considered deterministic interrupt response times and task switch times
3. Linux 2.6 is the next best option for real-time control
4. The results for Linux 2.4 with LXRT indicate that LXRT can not be used for hard real-time systems
5. Linux 2.4 can not be used for hard real-time systems
How can you do a good comparison of Real Time Linux capabilities, without including RTLinux? RTLinux is used in Bluecat RT, one of the more widely used commercial Real Time linux distros. For that matter, LynxOS would have also been a good one to use. It is difficult to make a comparison of Hard Real Time Linux, when you only have one Real Time Linux version to compare with... odd.