Real time officially comes to Linux
Cette publication existe aussi en Français
Linux has officially adopted real time patches into its mainline operating system to provide real time performance.
The real time capability from the PREEMPT_RT patches for the kernel were officially fully merged with the mainline codebase today for Linux 6.12 for x86, RISC-V and ARM64. This means Linux will soon start appearing in more mission-critical devices and industrial hardware.
The code has been in development for over 20 years to provide deterministic capabilities in Linux but required separate patches rather than being part of the main distribution. This required a reworking of the kernel’s widely used print_k function, a critical debugging tool dating back to 1991. This puts a hard delay in a Linux program that slowed down execution and made it non-deterministic. While this is very useful for debugging it is a problem for real time performance.
The PREEMPT_RT capability has been included in various versions of Linux for industrial applications, including Monte Vista, ENEA and Wind River. POSIX, launched in 1988, also defines real-time extensions for real-time signals, real-time scheduling policies, task synchronization mechanisms, clocks, and timers for Linux.
This has also driven a wide range of real time operating systems with smaller footprints, many in Europe, such as FreeRTOS and SafeRTOS in the UK, PikeOS in Germany, PX5 in the US and QNX in Canada and eMCOS in Japan.