|
|
Realtime Operating Systems (RTOS)
Content of this Page
RTCA/DO-178B certifiable RTOS
(back)
Partitioning (ARINC-653 standard) operating systems ready for Federal Aviation Administration (FAA) certification
(Advisory Circular 20-115B) with RTCA/DO-178B and EUROCAE ED-12B standards. They are intended for use in
civil aircrafts, the most safety-critical application known for electronic devices. RTCA/DO-178B and
EUROCAE ED-12B are very strict, extensive and very expensive standards.
|
RTOS
|
Manufact.
|
Kernel
|
Standards
|
Compilers
|
Com. Protocols
|
Host OS
|
Arch. 16bit
|
Arch. 32bit
|
Arch. 64bit
|
|
INTEGRITY -178B
|
Green Hills
|
INTEGRITY -178B partitioning kernel
|
DO-178B Level A, ARINC-653-1, POSIX.1, uITRON 4.0, OpenGL 1.3
|
Green Hills C, Embedded C++, Ada95
|
TCP/IP, PPP, FTP, Telnet, POP3, Bluetooth, Firewire, USB, X.25, SSH.
|
Linux, Solaris, HP-UX
|
-
|
PowerPC
|
PowerPC
|
|
VxWorks 653
|
Wind River
|
VxWorks 653 partitioning kernel
|
DO-178B Level A, ARINC-653, POSIX, OpenGL
|
Wind River C, C++, AdaCore Ada
|
TCP/IP, PPP, USB
|
VxWorks
|
-
|
PowerPC
|
-
|
|
LynxOS-178
|
LYNUX WORKS
|
LynxOS-178 partitioning kernel
|
DO-178B Level A, ARINC-653, POSIX.1, Linux 2.4 API
|
GCC
|
TCP/IP, PPP, USB, VME, PCI, PCMCIA, ISA, 1553, Fibre Channel, AFDX, CAN.
|
LynxOS, Solaris, AIX
|
-
|
PowerPC, x86
|
PowerPC
|
|
CsLEOS
|
BAE SYSTEMS
|
CsLEOS partitioning kernel
|
DO-178B Level A, ARINC-653, POSIX, OpenGL, CORBA
|
Score C, C++, Ada,
|
TCP/IP.
|
Solaris
|
-
|
PowerPC
|
-
|
|
Valid-653
|
Validated Software
|
raw ARINC-653 time and space scheduler
|
DO-178B Level A, ARINC-653
|
GCC, any commercial compiler
|
-
|
Solaris, any GNU hosts
|
-
|
MIPS, ARM, PowerPC, any Processor with MMU
|
-
|
Partitioning realtime operating systems
(back)
Partitioning operating systems for safety-critical applications like cars, trains, military aircraft,
weapons, etc. Safety-critical application for an RTOS implies that an execution failure could result in
injury or loss of human life. Every task executed by the operating system must be separated and can only
communicate over a well-defined general-purpose application/executive (APEX) interface,
specified in ARINC-653 standard. The malfunction of a low priority task can't
interfere with high priority and safety tasks.
|
RTOS
|
Manufact.
|
Kernel
|
Standards
|
Compilers
|
Com. Protocols
|
Host OS
|
Arch. 16bit
|
Arch. 32bit
|
Arch. 64bit
|
|
INTEGRITY
|
Green Hills
|
velOSity 5.0 (Green Hills) microkernel, 30kB
|
ARINC-653, POSIX.1, uITRON 4.0, OpenGL 1.3
|
Green Hills C, C++, Embedded C++, Ada95
|
TCP/IP, PPP, FTP, Telnet, POP3, Bluetooth, Firewire, USB, X.25, SSH.
|
Linux, Solaris, HP-UX
|
-
|
MIPS, ARM, PowerPC, ColdFire, Blackfin, TI OMAP
|
MIPS, PowerPC
|
|
RTLinuxPro
|
FSMLabs
|
RTCore kernel, 500kB - 2000kB
|
ARINC-653, POSIX, Linux 2.4, Linux 2.6
|
GCC
|
TCP/IP, PPP, USB
|
Linux
|
-
|
MIPS, ARM, PowerPC, x86
|
PowerPC
|
|
RTCoreBSD
|
FSMLabs
|
RTCore kernel
|
ARINC-653, POSIX, NetBSD 2.0, FreeBSD 4.10
|
GCC
|
TCP/IP, PPP, USB
|
Linux
|
-
|
MIPS, ARM, PowerPC, x86
|
PowerPC
|
|
PikeOS
|
SYSGO
|
P4,
(based on TU Dresdens L4 microkernel)
|
ARINC-653, POSIX, Linux 2.4, OSEK, uITRON
|
GCC
|
TCP/IP, PPP, USB
|
Linux, Solaris, Unix
|
-
|
MIPS, ARM, PowerPC, x86
|
-
|
Common realtime operating systems
(back)
Common realtime operating systems for applications where a predictable deterministic time reaction is mandatory
like in UAVs, satellites, robotics, machine controls, engine controls, etc.
|
RTOS
|
Manufact.
|
Kernel
|
Standards
|
Compilers
|
Com. Protocols
|
Host OS
|
Arch. 16bit
|
Arch. 32bit
|
Arch. 64bit
|
|
QNX Neutrino
|
QNX Software Systems
|
QNX Neutrino microkernel, 64kB
|
POSIX.1, OpenGL ES
|
GCC
|
TCP/IP, PPP, USB
|
QNX, Linux, Solaris
|
-
|
MIPS, ARM, PowerPC, x86
|
-
|
|
VxWorks
|
Wind River
|
VxWorks kernel
|
POSIX, OpenGL
|
GCC, Wind River C, C++, AdaCore Ada
|
TCP/IP, PPP, USB
|
VxWorks
|
-
|
MIPS, ARM, PowerPC, SH, x86, 68k
|
MIPS, PowerPC
|
|
LynxOS
|
LYNUX WORKS
|
LynxOS kernel, 280kB - 4000kB
|
POSIX.1, Linux 2.4 API
|
GCC
|
TCP/IP, PPP, USB, VME, PCI, PCMCIA, ISA, 1553, Fibre Channel, AFDX, CAN.
|
LynxOS, Solaris, AIX
|
-
|
MIPS, PowerPC, x86
|
MIPS, PowerPC
|
|
RTAI-Linux
|
Dipartimento di Ingegneria Aerospaziale (DIAPM) - Politecnico di Milano
free, GPL
|
RTAI-Linux kernel, 500kB - 2000kB
|
POSIX, Linux 2.4
|
GCC
|
UDP/IP, CAN.
|
Linux
|
-
|
ARM, PowerPC, x86
|
x86
|
|
L4Linux
|
TU Dresden,
L4Ka,
L4hq.org,
free, GPL
|
L4 microkernel
|
POSIX, Linux 2.4, Linux 2.6
|
GCC
|
-
|
Linux
|
-
|
MIPS, ARM, PowerPC, x86
|
IA64, MIPS, PowerPC, Alpha, x86
|
|
L4/Fiasco
|
TU Dresden,
L4Ka,
L4hq.org,
free, GPL
|
L3, L4 and Fiasco microkernel
|
-
|
GCC
|
-
|
Linux
|
-
|
MIPS, ARM, PowerPC, x86
|
IA64, MIPS, PowerPC, Alpha, x86
|
|
RTOS-UH
|
Institute for Automatic Control, University of Hannover
|
OSE kernel, 23kB-800kB
|
-
|
GCC
|
TCP/IP, CAN, INTERBUS, PROFIBUS
|
Any
|
-
|
PowerPC, 68k
|
-
|
|
RTEMS
|
OAR Corp., free, GPL
|
RTEMS kernel, 64kB-?
|
POSIX.1, uITRON 3.0, CORBA
|
GCC, GNAT Ada95
|
TCP/IP, PPP
|
Linux, Solaris, FreeBSD, NetBSD, OpenBSD, MacOS-X
|
H8
|
MIPS, ARM, PowerPC, OpenRisc32, SPARC, SH, i960, 68k, TMS320C3x, TMS320C4x
|
MIPS
|
|
eCos
|
Cygnus Solutions (Red Hat),
eCosCentric,
free, GPL
|
eCos kernel, 1250 Bytes - 300kB
|
POSIX.1, uITRON
|
GCC
|
TCP/IP, PPP, I2C, SPI, USB slave, PCI, PCMCIA, CF, JFFS2, SMP.
|
Linux
|
H8, CalmRisc16, MN102
|
MIPS, ARM, PowerPC, SPARC, SH, x86, 68k, FR-V, V850, CalmRisc32, MN103
|
MIPS
|
Tiny realtime operating systems
(back)
Tiny realtime operating systems for deeply embedded applications with smaller processors where
deterministic (not necessarily fast) time reactions are needed. Mostly used in control devices.
|
RTOS
|
Manufact.
|
Kernel
|
Standards
|
Compilers
|
Com. Protocols
|
Host OS
|
Arch. 16bit
|
Arch. 32bit
|
Arch. 8bit
|
|
Omega Environment
|
Cedaryacht, free
|
Omega Kernel, 50kB
|
-
|
GCC
|
TCP/IP
|
Linux, Solaris, Unix
|
-
|
PowerPC
|
-
|
|
OSE
|
ENEA
|
OSE kernel, 4kB-100kB
|
-
|
GCC
|
TCP/IP
|
Linux, Solaris
|
-
|
MIPS, ARM, PowerPC, TI OMAP
|
-
|
|
C Executive / PSX
|
JMI Software Systems
|
C Executive kernel, 5kB-45kB
|
POSIX.1 subset
|
GCC, GNAT Ada95
|
TCP/IP, PPP
|
Solaris, Any
|
68k, x86
|
MIPS, ARM, PowerPC, SPARC, i960, ColdFire, 68k, x86, TMS320C6000, TMS320C3x
|
-
|
|
RTXC Quadros
|
Quadros Systems
|
Quadros kernel
|
-
|
GCC
|
TCP/IP
|
Solaris
|
C166
|
ARM, PowerPC, ColdFire, Blackfin, TI C54x, TI C55x
|
-
|
|
uC/OS-II
|
Micrium, Jean Labrosse
|
uC/OS-II kernel
|
DO-178B, MISRA
|
Any ANSI C compiler
|
CAN, Modbus, TCP/IP, USB
|
Any
|
x86, HC12, 68k, H8, H8S, M16C, M32C, C166, dsPIC, MSP430
|
x86, 68k, Coldfire, PowerPC, ARM, MIPS, SH, Blackfin, TriCore, V850
|
AVR, HC08, 8051, PIC18
|
|
ProOSEK
|
3Soft
|
OSEK-OS 2.2 kernel
|
OSEK/VDX
|
Any ANSI C compiler
|
CAN
|
Linux, Any
|
HC12, H8S, C166, XC166, ST10, TMS470
|
MPC555, SH2, V850, Excalibur (ARM9)
|
HC08
|
|
FreeRTOS
|
Richard Barry, free, GPL
|
FreeRTOS kernel
|
-
|
GCC
|
TCP/IP
|
Any
|
H8, MSP430, H8, M68HCS12, x86
|
ARM, MicroBlaze
|
AVR, 8051, PICMicro
|
|
embOS
|
SEGGER
|
embOS kernel, 1.2kB-4.5kB
|
-
|
GCC, any ANSI C compiler
|
TCP/IP
|
Linux
|
MSP430, H8, M32C, M16C, R8C
|
ARM, FR-30, FR-V, V850, NIOS II
|
AVR, 8051
|
|
eXtreme
|
Shift-Right Technologies, free, GPL
|
eXtreme kernel, 336 Bytes
|
-
|
GCC, HEW2, NC30
|
TCP/IP
|
Linux
|
H8, M16C, R8C
|
-
|
AVR
|
(c) 2006, 2007 Ralf Schaefer Consulting
|