PREEMPT_RT is a feature of the Linux kernel which implements both hard and soft real-time computing capabilities. [1] It was formerly maintained as a set of out-of-tree patches. On September 20, 2024, PREEMPT_RT was fully merged and enabled in mainline Linux on the supported architectures x86, x86_64, RISC-V and ARM64. [2] This made kernel v6.12 the first release to include baked-in real-time capability.
The PREEMPT_RT patchset has been in development since 2005 [3] as an effort to make the Linux kernel capable real-time computing by reducing unbounded latencies in kernel paths. Early real-time enhancements were proposed by Ingo Molnár, Thomas Gleixner, and others. [4] The PREEMPT_RT patch series introduced features such as threaded interrupts, priority- inherited mutexes, and other mechanisms required for deterministic kernel behavior. [5]
For many years PREEMPT_RT was maintained as an out-of-tree patch set applied to stable kernel releases. To support the ongoing development OSADL, a German software organization with members from PREEMPT_RTs user but also it's creators like Gleixners Linutronix, has a working group. While parts of the PREEMPT_RT work were incrementally merged, the majority of the patch set remained external to mainline Linux.
In 2015, the Linux Foundation established the Real-Time Linux (RTL) Collaborative Project to coordinate efforts toward upstreaming PREEMPT_RT and to provide sustained development resources. The project brought together long term industry members and maintainers to focus on refactoring kernel subsystems and pushing critical real-time code into the mainline. [6]
In 2021, the preemption core locking code was merged. [7] [8]
At the September 2024 European Open Source Summit, Linus Torvalds announced that PREEMPT_RT had been accepted into the mainline Linux kernel after a protracted development hurdle involving the printk kernel logging facility.
PREEMPT-RT is actively used at the moment by distributors and vendors to enhance their own distributions.
MontaVista Software has been releasing a real-time Linux distribution containing the PREEMPT_RT patchset since the early 2000. Montavista's current main embedded Linux product, CGX, contains real-time preemption as a standard feature.
Since February 2023, Canonical has been releasing real-time versions of Ubuntu Pro, free for personal and small-scale commercial use in up to 5 machines. [9] [10] The real-time kernel can be added to various existing Ubuntu releases through an enablement process. [10] These kernels include the PREEMPT_RT patchset and offer long-term support. [10]