- Egy operációs rendszer valós idejű, ha mindig engedélyezi programjainak, hogy azok adott időbeni korlátokon belül futtassák feladataikat
- (az időkorlátokat általában az alkalmazás határozza meg)
- e definíció alapján határozhatók meg tulajdonságai is
- csak korlátozott számú feladat → minél több, annál jobb
- bemeneti csatornák időbeli viselkedésének figyelése
- erőforrások monitorozása
- háttérben futó alkalmazások megszakítása, ha szükséges a valósidejűség fenntartásához
- load shedding — határidőre be nem fejezhető feladatok leállítása
- eseményvezérelt RTOS
- az operációs rendszer állapotgépnek tekinthető, amely egy adott esemény bekövetkezésekor vált állapotot
- pl. Rust RTIC (Real-Time Interrupt-driven Concurrency) keretrendszer
- idővezérelt RTOS
- állapotváltozásai az idő függvénye
- pl. FreeRTOS (egy task egy előre definiált ideig fut), persze elérhető más ütemezés is
- feladatai
- párhuzamos programozási környezet biztosítása
- taskok létrehozása és kezelése
- ütemezés
- taskok közötti kommunikáció, szinkronizálás
- (kommunikációs csatornák kezelése)
- ringbuffer, queue, stb.
- megszakítások kezelése
- időzítés
- memóriakezelés
- mert ilyen egy jó kernel… (pl. Windows NT, Linux, bár ezek nem RTOS-ek)
- perifériák kezelése, rendszerprogramok (API)
- szintén minden kernel dolga ez