Operační systém reálného času
Z Wikipedie, otevřené encyklopedie
Operační systém reálného času (anglicky real-time operating system, zkratka RTOS) je v informatice multitaskingový operační systém zaměřený na běh úloh (procesů) reálného času. Uplatňuje se například v oblastech:
- embedded systémy
- robotika
- automatizace a elektronická měření
- telekomunikace
Obsah |
[editovat] Základní charakteristika RTOS
Dalo by se říci, že RTOS se snaží o systém reálného času, ale negarantuje ho. RTOS ani nemusí být systém vysoké výkonosti. Snahou real-time aplikací je spíše dodržet jisté deadlines a to buď „více méně“ u tzv. soft real time OS (měkké RTOS) nebo deterministicky hard real time (tvrdé RTOS). Dělení na soft a hard je také jedno ze základních dělení RTOS. RTOS typicky používají speciální plánovače, aby bylo dosahováno deterministického chování (vzhledem ke spuštěným procesům). Mezi hlavní faktory RTOS patří:
- minimální latence při reakci na událost
- minimální latence při přepínání vláken
- někdy nutnost malých rozměrů, viz Embedded systémy
- minimalizace časových okamžiků, kdy je vypnuto přerušení
- preemptivní plánování založené na prioritách
Další charakteristické vlastnosti:
- Správná funkce závisí nejen na výpočetním výsledku, ale také na čase, kdy ho bude dosaženo.
- Obvykle malé systémy se specializovaným použitím, případně jako nadstavba větších OS (Windows, Linux)
[editovat] Definice RTOS
Určitě sem nelze vypsat jednu jedinou definici a tak uvedeme několik běžných, často se vyskytujících.
[editovat] 1. Definice
Real-time systém je systém, ve kterém správnost výstupu je závislá nejen na správnosti výsledku výpočtu, ale též na čase, v němž je výsledek spočten.
[editovat] 2. Definice
Real-time systém je systém, který reaguje předvídatelným způsobem na nepředvídatelné externí události.
[editovat] 3. Definice
Pokud lze dokázat, že realtime systém splní svá ultimáta (deadlines) (a to za použití chování systému v nejhorším možném případě, nikoliv analýzou průměrného chování systému), potom můžeme říci, že chování systému je předvídatelné.
[editovat] Příklady RTOS
RTOS může být jak systém speciálně vyvinutý jako RT nebo klasický systém (Windows, Linux) s doinstalovaným vybavením, případně upraveným jádrem.
[editovat] Windows
Windows NT/2000/XP v základním provedení nejsou operační systémy reálného času. OS byly vyvinuty především pro domácí a kancelářské aplikace, nicméně jejich použitelnost jako RTOS byla Microsoftem zkoumána.
Hlavní důvody proč nemohou být použity jako RTOS jsou:
- málo priorit vláken
- nedeterminismus plánovače
- kvantitativní parametry OS musí být známé
- malé rozlišení časovače (5ms)
- nedostatečná rychlost přepínání kontextu
Existují však doplňky, které mají rozšířit možnosti Windows na RTOS. Jedním z nich je například RTX (Real-Time eXtension) od společnosti VenturCom.
RTX
- zkracuje rozlišitelnou jednotku času z 5ms na 20mikrosekund
- nezávislý plánovač vláken
Po nainstalování RTX zůstavají zachovány vlastnosti Windows jako běžného operačního systému.
[editovat] RTLinux
RTLinux je malý a rychlý operační systém, který je v souladu s normou POSIX 1003.13, což je architektura pro minimální operační systémy reálného času. RTLinux lze považovat za úplný operační systém s předvídatelnou činností v reálném čase, bez rozhraní pro standardní Linux bez reálného času. Vlákna RTLinuxu jsou zpracovány přímo plánovacím algoritmem s pevnou prioritou. Jádro a všechny procesy standardního Linuxu jsou řízeny plánovačem RTLinuxu jako úlohy v pozadí. RTLinux vytváří úplný obecný operační systém, který běží nad malým předem definovaným jádrem RTOS.
[editovat] VxWorks 6.x
je operační systém pro řízení v reálném čase, který se vyznačuje RT mikrojádrem wind. Toto jádro zahrnuje většinu nástrojů pro podporu reálného času. Patří k nejrozšířenějším operačním systémům reálného času zejména v oblasti průmyslových aplikací [embbended systém]ů. Mezi základní charakteristiky patří:
- Neomezený počet procesů/úloh
- Preemptivní plánování
- 256 úrovní priorit
- rychlá a flexibilní meziprocesová komunikace
- dědění priorit
- fronty zpráv
- signály
- roury
- sokety
- podporovaná CPU: PowerPC, ARM, Intel x86, ...
- není POSIX kompatibilní (řeší některé nedostatky specifikace)
Mikrojádro je navrženo s minimální režii systému, což umožňuje rychlou a deterministickou odezvu na externí událost. Tento systém je bezpečný i při použití v kritických aplikačních úlohách (byl použit v aplikacích meziplanetárního výzkumu). Systém je kompatibilní s řadou průmyslových standardů a lze jej používat na běžných CPU.
[editovat] Determinismus
- Operace jsou prováděny ve fixovaných, předem určených časech nebo časových intervalech.
- Reakce na přerušení musí proběhnout tak, aby systém byl schopen obsluhy všech požadavků v požadovaném čase.
[editovat] Hard real time OS
Tzv. tvrdý real time OS. Zde je požadavek na stanovení času reakce absolutní. Na RTOS klademe většinou následující požadavky
- preemptivní plánovač
- velký počet nastavitelných priorit vláken
- přesné hodiny reálného času
Můžeme také říci: systém je hard-real time, pokud by případné nedodržení časových limitů mělo katastrofální následky
[editovat] Soft real time OS
Na rozdíl od hard real time OS se u soft real time OS dovolují drobné odchylky v reakcích.
[editovat] Plánovač RTOS
RTOS mnohdy využívají plánovací algoritmy, které se liší od plánovačů běžných OS. Nejčastější z nich jsou:
- Rate monotonic scheduling (RMS)
- Earliest deadline First (EDF)
[editovat] Odkazy
[editovat] Související články
[editovat] Externí odkazy
[editovat] Česky
- Zpracování informací v reálném čase v prostředí OS Windows CE
- Základní koncepce RTOS.
- RTX 51 - RTOS pro 8051
[editovat] Anglicky
[editovat] Literatura
- JOSEPH, M.. Real-Time Systems Specification, Verification and Analysis. London : Prentice Hall, 1996. ISBN 0-13-455297-0.

