PREEMPT_RT

From Wikipedia, the free encyclopedia
(Redirected from Real-Time Linux)
Jump to navigation Jump to search

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.

History

[edit | edit source]

The PREEMPT_RT patchset has been in development since 2005.[3] In 2021, the preemption core locking code was merged.[4][5]

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.[6][7] The real-time kernel can be added to various existing Ubuntu releases through an enablement process.[7] These kernels include the PREEMPT_RT patchset and offer long-term support.[7]

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.

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.

References

[edit | edit source]
  1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  7. ^ a b c Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
[edit | edit source]