Generated by GPT-5-mini| PREEMPT_RT | |
|---|---|
| Name | PREEMPT_RT |
| Developer | Linux Foundation |
| Family | Unix-like |
| Working state | Active |
| Source model | Open source |
| Initial release | 2006 |
| Latest release | Ongoing |
| License | GPLv2 |
| Website | Linux Foundation |
PREEMPT_RT PREEMPT_RT is a set of patches and a development effort to transform the Linux kernel into a real-time capable operating system by reducing latency and making kernel operations preemptible. It aims to support deterministic scheduling for applications used in automotive industry systems such as Autonomous vehicle stacks, robotics platforms like Boston Dynamics projects, and industrial automation in Siemens and ABB deployments. The project has intersected with major open source initiatives and organizations including the Linux Foundation, Canonical (company), Intel Corporation, Red Hat, and Collabora.
PREEMPT_RT provides kernel modifications that enable full or near-full preemption of kernel code paths, transforming non-preemptible regions into preemptible sections, and replacing or modifying kernel primitives to meet hard and soft real-time requirements. The patch set changes scheduler behavior, interrupts, locking primitives, and I/O processing to reduce worst-case execution time for latency-sensitive tasks used in systems developed by Tesla, Inc., Bosch (company), and Toyota Motor Corporation. It interacts closely with technologies such as POSIX, Xenomai, RTEMS, and QNX in discussions comparing deterministic properties for safety-critical certifications like ISO 26262 and IEC 61508.
Development began in the mid-2000s with maintainers and contributors including individuals and companies previously collaborating on real-time extensions to Unix-like kernels. Early contributions were influenced by real-time research from institutions like University of Karlsruhe and Carnegie Mellon University, and by vendors such as Red Hat and Wind River Systems. Over time, the effort moved from an out-of-tree patch set toward upstream inclusion into the mainline Linux kernel, with major milestones coordinated around kernel releases that involved developers affiliated with Ingo Molnar, Thomas Gleixner, and organizations such as SUSE and Intel Corporation. Integration into mainline kernel trees accelerated after community efforts from the Kernel Summit and discussions at conferences like LinuxCon and Embedded Linux Conference.
PREEMPT_RT changes core kernel subsystems including the Completely Fair Scheduler, interrupt handling, and locking mechanisms like converting spinlocks into mutexes or sleepable locks. It introduces threaded interrupt handlers and prioritizes IRQ threads, enabling fine-grained control over interrupt masking similar to approaches in VXWorks and QNX Neutrino RTOS. Workqueue and softirq processing are restructured to reduce non-preemptible regions, affecting subsystems such as networking (Linux kernel), block device I/O, and filesystem code paths used by deployments in Amazon Web Services and Google Cloud Platform appliance stacks. The architecture also leverages real-time features of CPUs from vendors like Intel Corporation, Advanced Micro Devices, ARM Ltd., and NVIDIA, influencing scheduler tick handling and CPU isolation features seen in tools like cgroups and cpuset.
Configuration often requires selecting appropriate kernel config options in build systems like Yocto Project, Buildroot, or distribution-specific toolchains such as those used by Debian and Fedora. Real-time tuning commonly involves control of IRQ affinity via tools like irqbalance, setting scheduling policies via chrt and taskset, and using tracing utilities from Linux Trace Toolkit Next Generation and perf to measure latency. Integration with container orchestration platforms such as Kubernetes for edge computing requires node-level configuration and may use systemd unit changes, NUMA affinity adjustments, and real-time cgroup parameters in environments run by Canonical (company) or Red Hat.
PREEMPT_RT focuses on reducing worst-case latency and improving determinism by minimizing unbounded blocking and disabling long non-preemptible sections. Benchmarking typically uses latency measurement tools and scenarios from LTTng, cyclictest, and custom microbenchmarks, with comparisons drawn against other RT solutions like Xenomai and RTAI. Performance depends on workload patterns, hardware interrupt controllers such as Advanced Programmable Interrupt Controller, and driver maturity for devices from vendors like Realtek, Broadcom, and Intel Corporation. Achieving hard real-time guarantees often requires system-level validation and formal methods from organizations such as National Institute of Standards and Technology for safety-critical qualification.
PREEMPT_RT has been adopted in industries including automotive industry, aerospace industry, industrial automation, and telecommunications. Major distributions and vendors that include or support PREEMPT_RT work include SUSE, Red Hat, Canonical (company), and specialized vendors like Timesys and Linaro. Supported architectures span x86-64, ARM architecture, ARM64 (AArch64), and embedded platforms used by Raspberry Pi integrators and NXP (company) devices. Commercial adopters include Bosch (company), Continental AG, and Siemens, with involvement from research centers such as Fraunhofer Society.
Critics point to complexity in maintaining a large patch set, long-term maintenance burdens on mainline kernel integration, and the need for specialized driver support from vendors like Intel Corporation and NVIDIA to fully realize real-time properties. Some argue that alternatives such as Xenomai or proprietary RTOSes like VxWorks and QNX offer stronger isolation for certain certification regimes including DO-178C and ISO 26262, while others note trade-offs in throughput and power consumption on platforms from ARM Ltd. and Advanced Micro Devices. The community continues to debate upstreaming strategies discussed at events like Linux Plumbers Conference and in mailing lists hosted by the Kernel.org project.