Real-time Linux is critical to the mobile handset and telecommunications markets. Over the past five years, the standard Linux kernel has made significant gains in delivering better real-time performance (see the figure)-. At the turn of the century, average interrupt latency was on the order of 1 ms. Now, it's approaching 100 µs.
MontaVista's changes enhance stock versions of Linux, compared to the subkernel approach used in FSMLabs' RTLinux. The RTLinux real-time platform already provides a determinent execution environment. It was easier to limit interrupt disabling in a smaller subkernel designed for real-time operation.
MontaVista has reduced the number of places in the stock Linux kernel where interrupts are disabled by two orders of magnitude, leaving only about 100 critical regions where interrupts must be disabled. With the changes, a typical 300-MHz 32-bit processor has a worst-case interrupt disable latency on the order of 180 µs.
Kevin Morgan, MontaVista's VP of Engineering, says this may be cut by an order of magnitude next year as additional changes are made to bring standard Linux in line with other real-time operating systems. Linux does not have to hit the hardware performance limit to be suitable for over 95% of all real-time applications. Right now, it can handle a wide range of real-time applications.