RTEMS
Real-Time Executive for Multiprocessor Systems, formerly Real-Time Executive for Missile Systems, and then Real-Time Executive for Military Systems, is a real-time operating system designed for embedded systems. It is free and open-source software.
Development began in the late 1980s with early versions available via File Transfer Protocol as early as 1993. OAR Corporation managed the RTEMS project in cooperation with a steering committee until the early 2000's when project management evolved into a subset of the core developers managing the project. In 2014, hosting was moved from OAR Corporation to the at Oregon State University.
Design
RTEMS is designed for real-time embedded systems and to support various open application programming interface standards including Portable Operating System Interface and μITRON. The API known as the Classic RTEMS API was originally based on the Real-Time Executive Interface Definition specification. RTEMS includes a port of the FreeBSD Internet protocol suite and support for various file systems including Network File System and File Allocation Table.RTEMS provides extensive multi-processing and memory-management services.
Architectures
RTEMS has been ported to various target processor architectures:- ARM
- AArch64
- Atmel AVR
- Blackfin
- Freescale, now NXP ColdFire
- Texas Instruments – C3x/C4x DSPs
- Intel – x86 architecture members 80386, Pentium, and above
- LatticeMico32
- Microblaze
- 68k
- MIPS
- Nios II
- OpenRISC
- PowerPC
- Renesas – H8/300, M32C, M32R, SuperH
- RISC-V RV32, RV64 using QEMU
- SPARC – ERC32, LEON, V9
- V850
Uses
License
RTEMS components are currently licensed under a mixture of licenses including a GPL-2.0 derived license with the project working on trying to re-license original components to the project under the two paragraph BSD license.RTEMS was originally distributed under a modified GNU General Public License, allowing linking RTEMS objects with other files without needing the full executable to be covered by the GPL. This license is based on the GNAT Modified General Public License with the language modified to not be specific to the programming language Ada.