A real-time operating system (RTOS) is an operating system (OS) intended to serve real-time application requests.

A key characteristic of an RTOS is the level of its consistency concerning the amount of time it takes to accept and complete an application's task; the variability is jitter.

An RTOS has an advanced algorithm for scheduling. Scheduler flexibility enables a wider, computer-system orchestration of process priorities, but a real-time OS is more frequently dedicated to a narrow set of applications. Key factors in a real-time OS are minimal interrupt latency and minimal thread switching latency; a real-time OS is valued more for how quickly or how predictably it can respond than for the amount of work it can perform in a given period of time.

 An RTOS is used in many Industrial applications such as

Military: For gathering data from a wide variety of real time sensors (satellite,air,surface,subsurface) and delivering it to analysis capabilities and weapon systems

Telecommunications: Real Time access to information from vast array of devices including computers,set top boxes,PDAs,Pagers and wireless phones.

Aviation: Improved real time capabilities will increase safety and efficiency by identifying dangerous situations and enabling flexible routing to relieve congestion and prevent collisions.

Automotive: Commuters will receive real time data , GPS location information and operational data via ground stations and satellites , thus routing the driver around accidents , roadwork or traffic congestion in real time.

Scientific: For monitoring and instrument control.eg.seismic information is increasingly distributed on a vast scale ,enabling scientist to verify even small scale nuclear detonations as well as helping smaller remote countries prepare for weather and seismic disasters.

The linux-realtime package available for latest Ubuntu versions can bring real-time capabilities to Ubuntu Linux. The remainder of this article will covers in detail installation of linux-realtime package for Ubuntu so that it can be used for real-time application development efforts.

Installing Linux-Realtime in Ubuntu

Linux-Realtime can be installed on both 12.04 and older versions of the Ubuntu distribution. For Ubuntu 12.04 (Precise Pangolin) you can directly add the PPA from the following command.
  • $ sudo add-apt-repository ppa:abogani/realtime
For Ubuntu 11.10 or older you need to edit the sources.list file to add the repositories manually.
  • $ sudo gedit /etc/apt/sources.list
Then append the following lines at the end of the file
deb http://ppa.launchpad.net/abogani/realtime/ubuntu precise main
deb-src http://ppa.launchpad.net/abogani/realtime/ubuntu precise main
Save the file and update the apt repositories
  • $ sudo apt-get update
You are now ready to install the Linux-Realtime on your Ubuntu system
  • $ sudo apt-get install linux-realtime
(Last two steps are also valid for PPA method in Ubuntu 12.04)

This will update the Linux kernel to the version 3.2 with realtime version. With the Previous version of your linux kernel intact which you can choose from the grub boot menu at the boot time.

Note: Booting into Real-time Linux is not recommended for day to day work on Ubuntu as the performance with Real-time Linux is slightly slow and sluggish with normal desktop environments (such as gnome, unity etc) and apps than with the normal kernel OS.