Tech Papers
Can Linux Be A "Real-Time Operating System"? The lack of kernel preemption in Linux means that long system calls can delay high priority user process execution for relatively long periods, running into the tens of milliseconds in a 2.4 kernel. There is now a kernel preemption patch that today reduces this time down to one to two milliseconds, with further improvements planned for the future. Whether an operating system capable of these levels of responsiveness guarantees is considered "real-time" or not is a positioning rather than a technical issue. MontaVista Software's Kevin Morgan explains that this level of improvement in Linux moves it from "problematic" to "very acceptable" for the vast majority of applications that have real-time requirements (soft or hard).
For more information on Linux, visit
MontaVista Software's Web site.
Rate this Content
Navigate to related information





bblack
3/19/2011 8:15 AM EDT
This paper goes back to 2002 and is dated. It doesn't really address hard real time needs. I have worked for years with real time controls for tracking pedestals and lately have started to come up to speed with the RTAI patch. In the process I also did a quick review on the pre emptive patch. As far as I can see only RTLinux or RTAi provide an actual real time environment. The rest only seem to improve kernel latencies which may be fine for some things, but not for serious work.
Sign in to Reply
W1PK
3/25/2011 4:40 PM EDT
There are different levels of hard real-time, of course. The kernel team has been cleaning out the Big Kernel Lock bottlenecks for years. Our company designs many systems for our clients using embedded Linux nowadays, and it's fast enough for a wide variety of applications. Not all, of course; for the most critical timing requirements we tend to use FPGAs, or naked application code running on dedicated DSPs.
Sign in to Reply