Операційна система реального часу
Зміст
Визначення
Операційна система реального часу, ОСРЧ (англ. Real-Time Operating System) — один із типів операційної системи.Операційні системи реального часу (ОСРЧ) призначені для забезпечення інтерфейсу до ресурсів критичних за часом систем реального часу. Основним завданням в таких системах є своєчасність (timeliness) виконання обробки даних.
В якості основної вимоги до ОСРЧ висувається вимога забезпечення передбачуваності або детермінованості поведінки системи в найгірших зовнішніх умовах, що різко відрізняється від вимог до продуктивності та швидкодії універсальних ОС. Гарна ОСРЧ має передбачувану поведінку при всіх сценаріях системної завантаження (одночасні переривання і виконання потоків.
- Операційна система, в якій успішність роботи будь-якої програми залежить не тільки від її логічної правильності, а й від часу, за який вона отримала цей результат. Якщо система не може задовольнити тимчасовим обмеженням, повинен бути зафіксований збій в її роботі;
- ОС, яка реагує за передбачуваний час на непередбачувану появу зовнішніх подій;
- Стандарт POSIX 1003.1 дає визначення «Реальний час в операційних системах — це здатність операційної системи забезпечити рівень сервісу, який вимагається за визначений проміжок часу»;
- Інтерактивні системи постійної готовності. До категорії ОСРЧ їх відносять виходячи з маркетингових міркувань і якщо інтерактивну програму називають «працюючою в реальному часі», то це означає лиш те, що запити від користувача обробляються із затримкою, непомітною для людини.
Системи м'якого (soft) і жорсткого (hard)
Прийнято розрізняти системи м'якого (soft) і жорсткого (hard) реального часу. У системах жорсткого реального часу нездатність забезпечити реакцію на будь-які події в заданий час веде до відмов і неможливості виконання поставленого завдання. У більшості російськомовної літератури такі системи називають системами з детермінованим часом. При практичному застосуванні час реакції має бути мінімальним. Системами м'якого реального часу називаються системи, що не підпадають під визначення "жорсткі", тому що в літературі чіткого визначення для них поки немає. Системи м'якого реального часу можуть не встигати вирішувати завдання, але це не призводить до відмови системи в цілому. У системах реального часу необхідне введення деякого директивного терміну (в англомовній літературі - deadline), до закінчення якого задача повинна обов'язково (для систем м'якого реального часу - бажано) виконатися. Цей директивний термін використовується планувальником завдань як для призначення пріоритету задачі при її запуску, так і при виборі задачі на виконання.
Відмінні риси ОСРЧ
Стандарти ОСРЧ
Приклади ОСРЧ
Слід зробити зауваження, що в списку відсутні системи, розроблені в СРСР для систем військового та космічного призначення - з цілком зрозумілих причин, пов'язаних з режимом секретності. Однак, їх існування та використання протягом десятків років є безперечним фактом, який слід враховувати.
Вільні : ChibiOS / RT; XOberon - ОСРВ для БПЛА, написана на Обероне SA; RTLinux - ОС жорсткого РВ на основі Linux; RTEMS - ОС з відкритим вихідним кодом, розроблена DARPA МО США; Embox - конфігурується модульні ОС для вбудованих систем; ERIKA Enterprise - ОСРВ з відкритим вихідним кодом, OSEK сертифіковані, пов'язуючи винятком GPL; Fiasco (клон L4); OSA [14] - кооперативна багатозадачна ОСРВ з відкритим вихідним кодом для мікроконтролерів PIC (Microchip), AVR (Atmel) і STM8 (STMicroelectronics); FreeRTOS; KURT (KU Real Time Linux) - ОС м'якого РВ на основі Linux; Phoenix-RTOS; Nut / OS; Prex; RTAI; scmRTOS - Single-Chip Microcontroller RTOS; SHaRK; TNKernel; uOS; TRON Project; Xenomai; BeRTOS - ОСРВ для вбудованих систем з відкритим вихідним кодом, поширюється по ліцензії GPL; ART-Linux - ОС жорсткого РВ на основі Linux для використання у робототехніці. API режиму реального часу складається всього з п'яти функцій.
Пропрієтарні : Automation Runtime - ОС жорсткого РВ для контролерів B & R; QNX - з відкритим вихідним кодом (починаючи з версії QNX Neutrino 6.3.2); RTOS-32 - ОС з відкритим вихідним кодом; Ardence RTX; ChorusOS; CMX RTOS; DNIX; DMERT; DSOS; embOS (Segger); FlexOS; HP-1000/RTE [20]; INTEGRITY; ITRON; LynxOS; MERT; MicroC / OS-II; MQX RTOS [21]; Nucleus; OS-9; OSE; OSEK / VDX; OSEKtime; PDOS; Phar Lap ETS; PikeOS; Portos; pSOS; REX; RMX; RSX-11 (її радянський клон - ОСРВ СМ ЕОМ); RT-11; RTOS-UH; RTXC; Salvo RTOS; SINTRAN III; ThreadX; VRTX; VxWorks / Tornado; Windows CE; μnOS; UNIX-RTR; Virtuoso - ОСРВ для сигнальних процесорів DSP; Багет - ОСРВ розроблена НИИС РАН за замовленням МО РФ.