The hard real-time property makes it possible to control robots, data acquisition systems, manufacturing plants, and other time-sensitive instruments and machines from RTLinux applications.
[2] RTLinux was developed by Victor Yodaiken, Michael Barabanov, Cort Dougan and others at the New Mexico Institute of Mining and Technology and then as a commercial product at FSMLabs.
[4][5] For example, one might want to develop a real-time motor controller that used a commodity database and exported a web operator interface.
RTLinux was an attempt to update the MERT concept to the PC era and commodity hardware.
In particular, standard drivers for the guest worked without source modification although they needed to be recompiled to use the virtualization "hooks".
The Unix pipe was adapted to permit real-time and non-real-time programs to communicate, although other methods such as shared memory were also added.
RTLinux provides the ability to run special real-time tasks and interrupt handlers on the same machine as standard Linux.
Standard Linux has excellent average performance and can even provide millisecond level scheduling precision for tasks using the POSIX soft real-time capabilities.
Standard Linux is not, however, designed to provide sub-millisecond precision and reliable timing guarantees.
The key RTLinux design objective is that the system should be transparent, modular, and extensible [citation needed].
Most RTLinux functions are in a set of loadable kernel modules that provide optional services and levels of abstraction.
On initialization, a realtime task (module) informs the RTLinux kernel of its deadline, period, and release-time constraints.
In order to move the motor fluently, it is necessary to start this thread in strictly regular intervals.