Comparison of real-time operating systems

Last updated

This is a list of real-time operating systems (RTOSs). This is an operating system in which the time taken to process an input stimulus is less than the time lapsed until the next input stimulus of the same type.


Name License Source  modelTarget usesStatusPlatforms
Apache Mynewt Apache 2.0 open sourceembeddedactive ARM Cortex-M, MIPS32, Microchip PIC32, RISC-V
BeRTOS Modified GNU GPL open sourceembeddedarchivedARM, Cortex-M3, ARM ARM7TDMI, Atmel AVR, PowerPC (emu), x86 (emu), x86-64 (emu)
CapROS GNU GPL open sourceembeddedactiveIA-32, ARM9
ChibiOS/RT Dual, GNU GPL or proprietaryopen sourceembedded, small footprint activex86, ARM7, ARM9, Cortex-M0-M3-M4, PowerPC e200z, STM8, STM32, AVR, MSP430, ColdFire, H8S
ChorusOS  ? ? ?defunct SPARC, x86, PowerPC
Concurrent CP/M,
became MP/M
Proprietary closed (meanwhile: open source)general purpose, industrialhistoric8080, Z80, 8086
Concurrent DOS,
became Multiuser DOS
Proprietary closeddefunct8086, 286, 386, 68000, (also 8080/Z80 in dual-processor variants)
Contiki BSD open sourceembedded, WSN activeMSP430, AVR, ARM
Data General RDOS Proprietary  ?general purposedefunct Data General Nova, Data General Eclipse
Deos Proprietary closedsafety criticalactivex86, PowerPC, ARM, MIPS
DioneOS Proprietary available for licenseeembeddedMSP430, MSP430x
DMERT
(Duplex Multi-Environment Real-Time)
Proprietary(Bell Labs)closedOS for long-distance telephone switching systemsinactive Bell Labs 3B20D
(a proprietary, VAX-like system with redundant [duplex] processors)
DNIX Proprietary closedgeneral purposedefunct68000
GEC DOS Proprietary closedprocess controldefunctGEC 4000 series
DSOS Proprietary closed ?defunct TI-980A minicomputer
DSP/BIOS Proprietary closed, available with licensegeneral purposemaintenance onlyMostly Texas Instruments C2800, C5500, C6000 and OMAP DSP cores. Replaced by TI-RTOS, but available for download.
DSPnano RTOS Proprietary open sourceMCU, DSC, DSP SoCactiveR8C, M16C, PIC24, dsPIC33
eCos Modified GNU GPL open sourceembeddedinactiveARM-XScale-Cortex-M, CalmRISC, 680x0-ColdFire, fr30, FR-V, H8, IA-32, MIPS, MN10300, OpenRISC, PowerPC, SPARC, SuperH, V8xx
eCosPro Modified GNU GPL or eCosPro license open source with non-free portionsactiveARM7-9, Cortex-A5-A9-M3-M4-M7, 680x0-ColdFire, H8-H8S, IA-32, MIPS32, MIPS64, microMIPS, NIOS II, OpenRISC, PowerPC, SPARC, SH4/4A, TILE-Gx, XScale
embOS Proprietary closed, available to customers, free object code for non-commercial useembedded, industrial, IoT, safety criticalactiveARM7/9/11, ARM Cortex-A/R/M, AVR, AVR32, C16x, CR16C, ColdFire, H8, HCS12, M16C, M32C, MSP430, NIOS2, PIC18/24/32, R32C, R8C, RISC-V, RL78, RH850, RX100/200/600/700, RZ, SH2A, STM8, ST7, V850, 78K0, 8051
ERIKA Enterprise GPL and GPL linking exception open sourceembeddedARM7, ARM Cortex-M, ARM Cortex-A (on Jailhouse hypervisor), Hitachi H8, Altera Nios2, Microchip dsPIC (including dsPIC30, dsPIC33, and PIC24), Microchip PIC32, ST Microelectronics ST10, Infineon C167, Infineon Tricore, Freescale PPC e200 (MPC 56xx) (including PPC e200 z0, z6, z7), Freescale S12XS, EnSilica eSi-RISC, AVR, Lattice Mico32, MSP430, Renesas RX200, x86-64 (on Jailhouse hypervisor)
EROS Modified GNU GPL open sourceexperimental
research use
dormantIA-32
FlexOS Proprietary closedgeneral purpose, industrial, POSdefunct186, 286, 386, V60, V70, 68000
Flexible Safety RTOS Proprietary closed, available to customersembedded, safety criticalactive Altera/Intel NIOS II, ARM9, ARM Cortex-M, ARM Cortex-R, ARM Cortex-A, Infineon TriCore, Infineon AURIX, NXP ColdFire, NXP Kinetis, NXP PowerPC e200, NXP QorIQ, STMicroelectronics STM32, Xilinx/AMD MicroBlaze
FreeRTOS MIT open sourceembeddedactiveARM, AVR, AVR32, ColdFire, ESP32, HCS12, IA-32, Cortex-M3-M4-M7, Infineon XMC4000, MicroBlaze, MSP430, PIC, PIC32, Renesas H8/S, RISC-V, RX100-200-600-700, 8052, STM32, TriCore, EFM32
Fuchsia Variesembedded AArch64, x86-64
Keil RTX Apache 2.0 open sourceembeddedArm Cortex-M
FunkOS Modified Sleepycat License open sourceembeddedAVR, MSP430, Cortex-M3
HeartOS Proprietary closedsafety criticalx86, PowerPC, ARM
Huawei LiteOS BSD open sourceembeddeddefunctARM (M0/3/4/7, A7/17/53, ARM9/11), x86, RISC-V
HarmonyOS Proprietary closedembeddedactive AArch64, x86-64, RISC-V, LingxiISA
IBM 4680 OS Proprietary closedgeneral purpose, industrial, POSdefunct286
IBM 4690 OS Proprietary active286, 386
INTEGRITY Proprietary embeddedARM, XScale, Blackfin, ColdFire, MIPS, PowerPC, x86
INtime Proprietary x86
ITRON T-License variesembeddedARM, MIPS, x86, Renesas RX100-200-600-700-others
Kaspersky OS Proprietary open sourcesafety critical, virtualizationx86, x86_64, ARMV5, ARMV7, ARMV8, MIPS32
KolibriOS GNU GPL embeddablex86
LynxOS Proprietary source availableembedded Motorola 68010, x86/IA-32, ARM, Freescale PowerPC, PowerPC 970, LEON
Mbed OS Apache 2.0 open sourceembeddedArm Cortex-M
MenuetOS GNU GPL open source ?IA-32
MERT Proprietary(Bell Labs)closedOS for long-distance telephone switching systemsinactive PDP-11
MicroC/OS-III Apache 2.0 open sourceembeddedactiveARM7-9-11/Cortex-M1-3-4-A8/9, AVR, HC11/12/S12, ColdFire, Blackfin, MicroBlaze, NIOS, 8051, x86, Win32, H8S, M16C, M32C, MIPS, 68000, PIC24/dsPIC33/PIC32, MSP430, PowerPC, SH, StarCore, Renesas RX100-200-600-700, RL; STM32, ...
MontaVista Linux GNU GPL open sourceembedded ?
MP/M Proprietary closed (meanwhile: open source)general purpose, industrialdefunct8080, Z80, 8086
M-RTOS Proprietary closedsafety critical, embeddedactivePowerPC, ARM, MIPS
MQX Proprietary complimentary source availableembeddedactiveFreescale Power, ColdFire, Kinetis Cortex ARM, List of Freescale products
Multiuser DOS Proprietary closedgeneral-purpose, industrialdefunct386
Nano-RK Dual, GPL or commercialopen sourceembedded, WSN defunctAVR, MSP430
Neutrino Proprietary some source providedmicrokernel, embedded, industrialactiveARM, ARM64, MIPS, PPC, SH, x86, x86-64, XScale
Nucleus RTOS Proprietary source providedembeddedARM (Cortex-M3-M4-R4-R4F-A8-A9, ARM7-9-11), PowerPC, MIPS32-16e, microMIPS, ColdFire, SuperH
NUT Proprietary open sourceembedded, industrialARM-M0, ARM-M0+, ARM Cortex-M3, ARM9, ARM Cortex-M7, Cortex-M3
Nut/OS BSD embedded, industrialAVR, AVR32, ARM7, ARM9, Cortex-M3
NuttX Apache 2.0 open sourceembedded, small footprintLinux user mode, ARM7-9, Cortex-A5-A8-A9-M0-M3-M4-M7, 8052, Espressif ESP32, Lattice LM32, Renesas MC16C/26/SH-1, RISC-V, Zilog Z16F, Zilog eZ80 Acclaim!, Zilog Z8Encore!, Z80, MIPS PIC32MX, PIC32MZ
OpenComRTOS Proprietary source providedembedded Freescale PowerPC, Texas Instruments C66xxx DSP, ARM, XMOS, MicroBlaze, LEON, NXP CoolFlux DSP, Melexis MLX16, Win32, Linux
OS2000 Proprietary  ?embeddedactive MIPS (Baget variant), KOMDIV-32, KOMDIV-64, Intel BSPs (x86)
OS4000 Proprietary closedprocess controlmaintenance onlyGEC 4000 series
OSE Proprietary available to customersgeneral purposeactiveARM, PowerPC, x86, TI OMAP, ...
OS-9 Proprietary available to customersembeddedARM-strongARM, MIPS, PowerPC, SuperH, x86/Pentium, XSCALE, Motorola 6809, 680x0, SPARC
OSEK Dual, GPL or commercialspecificationengine control units
Phoenix-RTOS BSD open sourceembeddedactiveARMv7 Cortex-M, ARMv7 Cortex-A, IA-32, RISC V
PikeOS Proprietary available to customerscertifiable safety & security, embedded virtualisationPPC, x86, ARM, MIPS, SPARC-LEON, RISC-V
Protothreads BSD open sourcegeneral purposeactiveArchitecture independent
pSOS Proprietary  ? ?discontinued680x0
PX5 RTOS Proprietary royalty-free licensingembeddedactiveEmbedded MCU and MPU architectures. ARM's Cortex-M, Cortex-R, Cortex-A, RISC-V. AMP and SMP configurations.
QNX Proprietary  ?microkernel, embedded, industrialactive
QP Dual, GPL or commercialdualMCU, DSC, DSP SoCARM7/9, ARM Cortex-M3-M0, MSP430, TMS320C28x, AVR, AVRXmega, ColdFire, 68HC08, M16C/R8C, H8, 8051, 80251, PIC18, PIC24/dsPIC33, Nios II, PSoC1
REAL/32 Proprietary closedgeneral-purpose, industrial386
Real-time Linux (PREEMPT RT) GNU GPLv2 open sourcegeneral purposex86, x86_64, RISC-V, ARM64 and LoongArch (ARM and POWER in the -rt branch) [1]
RedHawk Linux RTOS Proprietary closedhardware-in-the-loop, software-in-the-loop, general purposeactiveIntel, AMD, ARM, NVIDIA Drive, NVIDIA Jetson Orin
REX OS Proprietary closed, available with licenseembeddedinactiveARM
RIOT GNU LGPL open sourceactiveARM7, ARM Cortex M, MSP430, AVR, RISC-V, Xtensa
RMX Proprietary closeddefunct Intel 8080, 8086, 80386, higher
RODOS BSD source providedactive ARMv7 (M3, A8, A9), AVR32, PowerPC 405, SPARC64

Platforms: SmartFusion2, RaspberryPi, STM32 On an OS: Linux, Windows, macOS, FreeRTOS, RTEMS

RSX-11 Proprietary  ? ?historicPDP-11
RT-11 Proprietary  ?general purposedefunctPDP-11
RTAI GNU GPL open sourcegeneral purposeactivex86 (with and without FPU and TSC), x86-64, PowerPC, ARM (StrongARM; ARM7: clps711x-family, Cirrus Logic EP7xxx, CS89712, PXA25x), m68k (supporting both MMU and NOMMU cpus)
RTEMS BSD embeddedAArch64, ARM, Blackfin, ColdFire, TI C3x/C4x, H8/300, x86, x86_64, 68k, Microblaze, Milkymist SoC, MIPS, Nios II, PowerPC, SuperH, SPARC, ERC32, LEON, Mongoose-V
RTLinux GNU GPL general purposeinactivesame as Linux
RT-Kernel Proprietary source providedembeddedactiveARM, Blackfin
RT-Thread Apache 2.0 open sourceembeddedactiveARM, ARM Cortex-M0-M3-R4-M4-M7, IA-32, AVR32, Blackfin, nios, PPC, M16C, MIPS (loongson-1b-1c, PIC32,xburst), MicroBlaze, V850, unicore32,
RTXC Quadros Proprietary source availableembeddedARM - Atmel/Freescale/NXP/ST/TI, Blackfin, 680x0-ColdFire, PowerPC, StarCore, TI-Luminary Stellaris, TI OMAP, XScale
RTX, RTX64 Proprietary closedMS Windows extensionx86, x86-64
RX116  ? ?embedded, industrialdefunct NEC V20, NEC V30, NEC V40, NEC V50
RX616  ? ?safety critical, embedded, industrial NEC V60, NEC V70
RX-UX832  ? ?embedded, industrial, general-purposeNEC V60, NEC V70
SafeRTOS Proprietary source code & Design Assurance Pack availableembedded, safety criticalactiveSame as FreeRTOS
SHaRK GNU GPL open source ?inactive ?
Simulink Real-Time Proprietary closedreal-time testing-embeddedactivex86
SINTRAN III Proprietary  ? ? ? Norsk Data computers
Symbian OS Eclipse open sourceembeddeddefunctARM
T-Kernel T-Licensesource availableembedded RTOSactiveARM, MIPS, SH, more
THEOS Proprietary  ? ? ? ?
ThreadX MIT open source ?activeARC, ARM/Thumb, AVR32, BlackFin, 680x0-ColdFire, H8-300H, Luminary Micro Stellaris, M-CORE, MicroBlaze, PIC24-dsPIC, PIC32, MIPS, V8xx, Nios II, PowerPC, Renesas RX100, RX200, RX600, RX700, Synergy, SH, SHARC, StarCore, STM32, StrongARM, TMS320C54x, TMS320C6x, x86/x386, XScale, Xtensa/Diamond, ZSP
TI-RTOS Kernel (SYS/BIOS) BSD open sourceembeddedMostly Texas Instruments: MSP430-432, C2000-5000-6000, TI's ARM families (Cortex M3-4F-R4-A8-A15), SimpleLink Wireless CC2xxx-CC3xxx
TizenRT Apache 2.0 open sourceembeddedactive
Transaction Processing Facility Proprietary mixedgeneral purposeactive IBM Z series
TRON project Freemixedmixedactiveany: is a specification, not an implementation
UNIX-RTR  ? ? ?defunct PDP-11
UNOS  ? ? ?historic680x0
UniProtonFreeopen sourceembeddedactive AArch64 (Kunpeng), x86-64 on openEuler community & ARM, RISC-V, x86, x64 and LoongArch on OpenHarmony and Oniro OS as add-on kernel
μITRON T-License open sourceembeddedactiveARM, MIPS, x86, Renesas RX100-200-600-700-others
μ-velOSity Proprietary  ?microkernelactive ?
velOSity Proprietary  ? ?Power ISA, ARM/XScale, MIPS, x86/Pentium, ColdFire, Blackfin, OMAP, DaVinci
VAXELN Proprietary closed source ?historicVAX
VRTX Proprietary  ? ?superseded by Nucleus RTOS ARM, MIPS, PowerPC, RISC
VxWorks Proprietary  ?embeddedactiveARM, IA-32, Intel 64, MIPS, PowerPC, SH-4, StrongARM, xScale
Windows CE Proprietary Microsoft Shared Sourcex86, MIPS, ARM, SuperH
Windows 10 IoT Proprietary  ?Intel Atom, Celeron, Pentium; Qualcomm Snapdragon, Broadcom, NXP i.MX
Xenomai GNU GPLv2 open sourcegeneralx86, x86-64, PowerPC, ARM, Analog Devices Blackfin BF52x, BF53x, BF54x and BF56x
XINU Freeembeddedactivex86, MIPS, ARM, AVR
XMK BSD open sourceembeddedinactive
Zephyr Apache 2.0 open sourceembeddedactive ARM (Cortex-M0, -M3, -M4, -M23, -M33, -R4, -R5, -A53), x86, ARC, RISC-V, Nios II, Xtensa, SPARC

Related Research Articles

Real-time computing (RTC) is the computer science term for hardware and software systems subject to a "real-time constraint", for example from event to system response. Real-time programs must guarantee response within specified time constraints, often referred to as "deadlines".

A real-time operating system (RTOS) is an operating system (OS) for real-time computing applications that processes data and events that have critically defined time constraints. An RTOS is distinct from a time-sharing operating system, such as Unix, which manages the sharing of system resources with a scheduler, data buffers, or fixed task prioritization in multitasking or multiprogramming environments. All operations must verifiably complete within given time and resource constraints or else fail safe. Real-time operating systems are event-driven and preemptive, meaning the OS can monitor the relevant priority of competing tasks, and make changes to the task priority. Event-driven systems switch between tasks based on their priorities, while time-sharing systems switch the task based on clock interrupts.

<span class="mw-page-title-main">Embedded system</span> Computer system with a dedicated function

An embedded system is a specialized computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is embedded as part of a complete device often including electrical or electronic hardware and mechanical parts. Because an embedded system typically controls physical operations of the machine that it is embedded within, it often has real-time computing constraints. Embedded systems control many devices in common use. In 2009, it was estimated that ninety-eight percent of all microprocessors manufactured were used in embedded systems.

<span class="mw-page-title-main">QNX</span> Real-time operating system (RTOS) software

QNX is a commercial Unix-like real-time operating system, aimed primarily at the embedded systems market.

pSOS is a real-time operating system (RTOS), created in about 1982 by Alfred Chao, and developed and marketed for the first part of its life by his company Software Components Group (SCG). In the 1980s, pSOS rapidly became the RTOS of choice for all embedded systems based on the Motorola 68000 series family architecture, because it was written in 68000 assembly language and was highly optimised from the start. It was also modularised, with early support for OS-aware debugging, plug-in device drivers, Internet protocol suite (TCP/IP) stacks, language libraries, and disk subsystems. Later came source code level debugging, multiprocessing support, and further computer networking extensions.

<span class="mw-page-title-main">Embedded operating system</span> Type of computer operating system

An Embedded Operating System (EOS) is an operating system designed specifically for embedded computer systems. These systems aim to enhance functionality and reliability to perform dedicated tasks. When the multitasking method employed allows for timely task execution, such an OS may qualify as a real-time operating system (RTOS).

The LynxOS RTOS is a Unix-like real-time operating system from Lynx Software Technologies. Sometimes known as the Lynx Operating System, LynxOS features full POSIX conformance and, more recently, Linux compatibility. LynxOS is mostly used in real-time embedded systems, in applications for avionics, aerospace, the military, industrial process control and telecommunications.

<span class="mw-page-title-main">Blackfin</span> Family of 16-/32-bit microprocessors

Blackfin is a family of 16-/32-bit microprocessors developed, manufactured and marketed by Analog Devices. The processors have built-in, fixed-point digital signal processor (DSP) functionality performed by 16-bit multiply–accumulates (MACs), accompanied on-chip by a microcontroller. It was designed for a unified low-power processor architecture that can run operating systems while simultaneously handling complex numeric tasks such as real-time H.264 video encoding.

<span class="mw-page-title-main">FreeRTOS</span> Real-time operating system

FreeRTOS is a real-time operating system kernel for embedded devices that has been ported to 40 microcontroller platforms. It is distributed under the MIT License.

Eclipse ThreadX is a highly deterministic, embedded real-time operating system (RTOS) programmed mostly in the language C. Originally it was named ThreadX when Express Logic first developed it, later it was renamed to Azure RTOS after Express Logic was purchased by Microsoft, most recently it was renamed again to Eclipse ThreadX after it transitioned to open source model under the stewardship of the Eclipse Foundation.

TI-RTOS is an embedded tools ecosystem created and offered by Texas Instruments (TI) for use across a range of their embedded system processors. It includes a real-time operating system (RTOS) component-named TI-RTOS Kernel, networking connectivity stacks, power management, file systems, instrumentation, and inter-processor communications like DSP/BIOS Link. It is free and open-source software, released under a BSD license.

<span class="mw-page-title-main">XtratuM</span> Hypervisor

XtratuM is a bare-metal hypervisor specially designed for embedded real-time systems available for the instruction sets LEON2/3/4, ARM v7 and V8 processors and RISC-V processor.

<span class="mw-page-title-main">TenAsys</span> American software company

TenAsys is a privately owned company providing real-time software and services based on the x86 Intel Architecture and Microsoft Windows operating system.

<span class="mw-page-title-main">QP (framework)</span> Operating system

QP is a family of open source real-time embedded frameworks (RTEFs) and runtime environments based on active objects (actors) and hierarchical state machines. The QP family consists of the lightweight QP/C and QP/C++ frameworks, written in C (C99) and C++ (C++11), respectively.

<span class="mw-page-title-main">OpenComRTOS</span> Real-time operating system

OpenComRTOS is a commercial network-centric, formally developed real-time operating system (RTOS), aimed mainly at the embedded system market.

RT-Thread is an open-source real-time operating system (RTOS) for embedded systems and Internet of things (IoT). It is developed by the RT-Thread Development Team based in China. RT-Thread is aimed to change the current situation in China that there is no well used open-source real-time operating system in the microcontroller field.

<span class="mw-page-title-main">Zephyr (operating system)</span> Real-time operating system

Zephyr is a small real-time operating system (RTOS) for connected, resource-constrained and embedded devices supporting multiple architectures and released under the Apache License 2.0. Zephyr includes a kernel, and all components and libraries, device drivers, protocol stacks, file systems, and firmware updates, needed to develop full application software.

PX5 RTOS is a real-time operating system (RTOS) designed for embedded systems. It is implemented using the ANSI C programming language.

William (Bill) Lamie is an American software engineer. He is known as the author of the Nucleus, ThreadX and PX5 real-time operating systems (RTOS).

References