RTEMS is a free
open sourceThe term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...
real-time operating systemA real-time operating system is an operating system intended to serve real-time application requests.A key characteristic of a RTOS is the level of its consistency concerning the amount of time it takes to accept and complete an application's task; the variability is jitter...
(RTOS) designed for
embedded systemAn embedded system is a computer system designed for specific control functions within a larger system. often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. By contrast, a general-purpose computer, such as a personal...
s.
The acronym RTEMS initially stood for
Real-Time Executive for Missile Systems, then became
Real-Time Executive for Military Systems before changing to its current meaning. RTEMS development began in the late 1980s with early versions of RTEMS available via ftp as early as 1993. OAR Corporation is currently managing the RTEMS project in cooperation with a Steering Committee which includes user representatives.
RTEMS is designed for real-time, embedded systems and has been ported to various target processor architectures:
- ARM
ARM is a 32-bit reduced instruction set computer instruction set architecture developed by ARM Holdings. It was named the Advanced RISC Machine, and before that, the Acorn RISC Machine. The ARM architecture is the most widely used 32-bit ISA in numbers produced...
- Atmel AVR
The AVR is a modified Harvard architecture 8-bit RISC single chip microcontroller which was developed by Atmel in 1996. The AVR was one of the first microcontroller families to use on-chip flash memory for program storage, as opposed to one-time programmable ROM, EPROM, or EEPROM used by other...
- Blackfin
The Blackfin is a family of 16- or 32-bit microprocessors developed, manufactured and marketed by Analog Devices. The family is characterized by their built-in, fixed-point digital signal processor functionality supplied by 16-bit Multiply–accumulates , accompanied on-chip by a small and...
- Freescale ColdFire
The Freescale ColdFire is a microprocessor that derives from the Motorola 68000 family architecture, manufactured for embedded systems development by Freescale Semiconductor .-Instruction set:...
- Texas Instruments
Texas Instruments Inc. , widely known as TI, is an American company based in Dallas, Texas, United States, which develops and commercializes semiconductor and computer technology...
C3x/C4xTexas Instruments TMS320 is a blanket name for a series of digital signal processors from Texas Instruments. It was introduced on April 8, 1983 through the TMS32010 processor, which was then the fastest DSP on the market....
DSPs
- H8/300
H8 is the name of a large family of 8-bit and 16-bit microcontrollers made by Renesas Technology, originating in the early 1990s within Hitachi Semiconductor and still actively evolving as of 2006...
- Intel 80386
The Intel 80386, also known as the i386, or just 386, was a 32-bit microprocessor introduced by Intel in 1985. The first versions had 275,000 transistors and were used as the central processing unit of many workstations and high-end personal computers of the time...
, Pentium, and above members of the x86 architectureThe term x86 refers to a family of instruction set architectures based on the Intel 8086 CPU. The 8086 was launched in 1978 as a fully 16-bit extension of Intel's 8-bit based 8080 microprocessor and also introduced segmentation to overcome the 16-bit addressing barrier of such designs...
- Lattice Mico32
- 68k
The Motorola 680x0/m68000/68000 is a family of 32-bit CISC microprocessors. During the 1980s and early 1990s, they were popular in personal computers and workstations and were the primary competitors of Intel's x86 microprocessors...
- MIPS
MIPS is a reduced instruction set computer instruction set architecture developed by MIPS Technologies . The early MIPS architectures were 32-bit, and later versions were 64-bit...
- Nios II
Nios II is a 32-bit embedded-processor architecture designed specifically for the Altera family of FPGAs. Nios II incorporates many enhancements over the original Nios architecture, making it more suitable for a wider range of embedded computing applications, from DSP to system-control.Nios II is...
- PowerPC
PowerPC is a RISC architecture created by the 1991 Apple–IBM–Motorola alliance, known as AIM...
- Renesas M32C
- Renesas M32R
The M32R is a 32-bit RISC instruction set architecture developed by Mitsubishi for embedded microprocessors and microcontrollers. The ISA is now owned by Renesas Electronics Corporation, and the company designs and fabricates M32R implementations. M32R processors are used in embedded systems such...
- Renesas SuperH
SuperH is a 32-bit reduced instruction set computer instruction set architecture developed by Hitachi. It is implemented by microcontrollers and microprocessors for embedded systems....
- SPARC
SPARC is a RISC instruction set architecture developed by Sun Microsystems and introduced in mid-1987....
- ERC32
ERC32 is a radiation-tolerant 32-bit RISC processor developed for space applications. It was developed by Temic . Two versions have been manufactured, the ERC32 Chip Set , and the ERC32 Single Chip . These implementations follows SPARC V7 specifications...
- LEON
LEON is a 32-bit CPU microprocessor core, based on the SPARC-V8 RISC architecture and instruction set. It was originally designed by the European Space Research and Technology Centre , part of the European Space Agency , and after that by Gaisler Research. It is described in synthesizable VHDL...
RTEMS is designed to support various open API standards including
POSIXPOSIX , an acronym for "Portable Operating System Interface", is a family of standards specified by the IEEE for maintaining compatibility between operating systems...
and uITRON. The API now known as the Classic RTEMS API was originally based upon the Real-Time Executive Interface Definition (RTEID) specification. RTEMS includes a port of the
FreeBSDFreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...
TCP/IP stack as well as support for various filesystems including NFS and the FAT filesystem.
RTEMS does not provide any form of memory management or processes. In POSIX terminology, it implements a single process, multithreaded environment. This is reflected in the fact that RTEMS provides nearly all POSIX services other than those which are related to memory mapping, process forking, or shared memory. RTEMS closely corresponds to POSIX Profile 52 which is "single process, threads, filesystem".
RTEMS is used in many application domains. The
EPICSThe Experimental Physics and Industrial Control System is a software environment used to develop and implement distributed control systems to operate devices such as particle accelerators, telescopes and other large experiments. EPICS also provides SCADA capabilities...
community includes multiple people who are active RTEMS submitters. RTEMS is also popular for space uses since it supports multiple microprocessors developed for use in space including
SPARCSPARC is a RISC instruction set architecture developed by Sun Microsystems and introduced in mid-1987....
,
ERC32ERC32 is a radiation-tolerant 32-bit RISC processor developed for space applications. It was developed by Temic . Two versions have been manufactured, the ERC32 Chip Set , and the ERC32 Single Chip . These implementations follows SPARC V7 specifications...
and
LEONLEON is a 32-bit CPU microprocessor core, based on the SPARC-V8 RISC architecture and instruction set. It was originally designed by the European Space Research and Technology Centre , part of the European Space Agency , and after that by Gaisler Research. It is described in synthesizable VHDL...
,
MIPSMIPS is a reduced instruction set computer instruction set architecture developed by MIPS Technologies . The early MIPS architectures were 32-bit, and later versions were 64-bit...
Mongoose-VThe Mongoose-V 32-bit microprocessor for spacecraft onboard computer applications is a radiation-hardened and expanded 10–15 MHz version of the MIPS R3000 CPU. The Mongoose was developed by Synova, Inc...
,
ColdfireThe Freescale ColdFire is a microprocessor that derives from the Motorola 68000 family architecture, manufactured for embedded systems development by Freescale Semiconductor .-Instruction set:...
, and
PowerPCPowerPC is a RISC architecture created by the 1991 Apple–IBM–Motorola alliance, known as AIM...
architectures, which are available in space hardened models. RTEMS is currently orbiting Mars as part of the Electra software radio (see
Mars Reconnaissance OrbiterMars Reconnaissance Orbiter is a NASA multipurpose spacecraft designed to conduct reconnaissance and Exploration of Mars from orbit...
).
RTEMS is distributed under a modified GPL licence, allowing linking RTEMS objects with other files without requiring the full executable to be covered by the GPL. This license is based on the
GNAT Modified General Public LicenseThe GNAT Modified General Public License is a version of the GNU General Public License specifically modified for the generic feature found in the Ada programming language.The modification is as follows:...
with the language modified to not be specific to the
Ada programming languageAda is a structured, statically typed, imperative, wide-spectrum, and object-oriented high-level computer programming language, extended from Pascal and other languages...
.
It is used as the default operating system on the
Milkymist Video SynthesizerThe Milkymist project is an informal organization of people and companies who develop, manufacture and sell a comprehensive open source solution for the live synthesis of interactive visual effects for VJs...
.
See also
- Lattice Mico32
- Milkymist Video Synthesizer
The Milkymist project is an informal organization of people and companies who develop, manufacture and sell a comprehensive open source solution for the live synthesis of interactive visual effects for VJs...
- Qi hardware
Qi hardware, also called Copyleft hardware, is hardware that attempts to apply the Free Software Foundation's GNU GPL concept of copylefting software to the hardware layer. The project is both a popular open hardware community websites and a company, co-founded by Wolfgang Spraul and Yi Zhang, that...
External links