RTEMS
Материал из Википедии — свободной энциклопедии
RTEMS | |
![]() Исполнитель реального времени для мультипроцессорных систем |
|
Разработчик | OAR Corporation |
Семейство ОС | (не применимо) |
Исходный код | Открытый исходный код |
Последняя версия | 4.6.6 — Апрель 2006 |
Тип ядра | {{{kernel_type}}} |
Интерфейс | {{{default_ui}}} |
Лицензия | Модифицированная GPL |
Состояние | Активная разработка |
Веб-сайт | RTEMS Site |
RTEMS (русск. Исполнитель реального времени для мультипроцессорных систем, англ. Real-Time Executive for Multiprocessor Systems) — свободная операционная система реального времени с открытым исходным кодом, разработанная для встраиваемых систем.
Акроним RTEMS происходит от слов Исполнитель реального времени для ракетных систем (англ. Real-Time Executive for Missile Systems (позже словосочетание «ракетных систем» заменили на «военных систем», англ. Military Systems)
Разработка велась с конца 1980-х под управлением OAR Corporation, совместно с Управляющим Комитетом RTEMS, включающим представительство основных пользователей системы. Доступ к новым версиям по FTP организован с начала 1993 года.
Содержание |
[править] Целевые платформы
- ARM
- Blackfin
- Freescale ColdFire
- цифровые сигнальные процессоры Texas Instruments серий C3x/C4x
- Hitachi H8/300
- i386, Pentium и старше
- Motorola 68000
- MIPS
- Nios_II
- PowerPC
- SuperH
- SPARC
[править] Поддержка стандартов
RTEMS разрабатывалась с учётом различных открытых стандартов, включая POSIX и uITRON.
Программный интерфейс приложений (API, он же Classic RTEMS API) изначально основывался на спецификациях определения исполнительного интерфейса реального времени (англ. Real-Time Interface Executive Definition, англ. RTEID). Также RTEMS включает в себя порт TCP/IP стека ОС FreeBSD и поддержку файловых систем, включая NFS и FAT.
RTEMS не предусматривает каких-либо форм управления памятью процессов, что, в терминологии POSIX, говорит о том, что система поддерживает только единое, однонитевое, многопотоковое окружение. Это отражается в том факте, что RTEMS обеспечивает почти все сервисы POSIX, кроме относящихся к распределению памяти, разветвлению процессов и общего поля помяти. RTEMS на сегодняшний день полностью соответствует POSIX Profile 52, означающем «один процесс, много потоков, файловая система» ([1]).
[править] Применение
Внедрением RTEMS во многих областях ведает сообщество EPICS, включающее множество активных разработчиков собственно RTEMS.
RTEMS стала популярна в аэрокосмической сфере с началом своей поддержки различных микропроцессоров, используемых в этой области, таких как, например, SPARC ERC32 и LEON, а также микропроцессоров архитектуры MIPS (Mongoose-V), архитектур Coldfire и PowerPC в военно-космическом исполнении. Сегодня RTEMS используется на борту Mars Reconnaissance Orbiter, как управляющая радиомодулем Electra.
[править] Распространение (лицензия)
Код RTEMS распространяется по модифицированной лицензии GPL, позволяющей использование частей кода в других файлах, не обязательно также использующих GPL. Эта лицензия основана на GNAT Modified General Public License (исключена особенность этой лицензии, заключающаяся в её привязке к языку программирования Ада).