This is the home page for the real time scheduler project.

The real time scheduler is a patch for the linux kernel that separates the ready real time tasks into MAX_PRI lists. This allow very fast insertion. It also allows very fast, basically flat dispatch times of real time tasks. Non real time or SCHED_OTHER tasks are handled in a fashion similar to the standard scheduler, however, the management of the time slice calculation is modified to be MUCH faster while having the same end result.

Real Time Scheduler for Linux

The Real Time scheduler patch gives you an option to choose to build a kernel with the real time scheduler in it. If you don't choose to enable the real time scheduler the kernel will be built the same as if you had not installed the patch.

If you enable the real time scheduler, you may also choose a max priority for real time tasks. The available range is 99 to 2047. Values outside this range are quietly moved to fall in the range.

In order to enable the real time scheduler you must use one of the kernel configure tools to turn it on. The question appears in the processor options section of the configuration.

For kernels earlier than 2.4.2 the scheduler is supported on PPC and ix86 processors, UP only machines.

Starting with the 2.4.2 kernel the scheduler is supported on all architectures and SMP is supported.

There is now a version (2.4.3-1.x) that is compatable with the MontaVista preemption patch. This version will cleanly apply to 2.4.2 and 2.4.3 kernels.

Warning: The Real Time scheduler does not honor the "allowed_cpus" member of the task_struct, thus it will not honor any attempt to define cpu affinity. At this time the only known use of this is in TUX, where the dishonoring of this option may cause a performance hit.

Our project page is here.

Our mail list join up is here.

Currently we have downloads for for the 2.2.14 kernel and the 2.4.2/3 and the 2.4.4 kernels.


Thanks to SourceForge Logo for hosting this project.

Thanks to for funding this project.

Last update at <20010618.1519.46>. This page maintained by George Anzinger.