::Real-time operating system


Tasks::priority    Systems::ready    Memory::system    Resource::which    Critical::handler    Other::message

A real-time operating system (RTOS) is an operating system (OS) intended serve real-time application process data as it comes in, typically without buffering delays. Processing time requirements (including any OS delay) are measured in tenths of seconds or shorter.

A key characteristic of an 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.<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> A hard real-time operating system has less jitter than a soft real-time operating system. The chief design goal is not high throughput, but rather a guarantee of a soft or hard performance category. An RTOS that can usually or generally meet a deadline is a soft real-time OS, but if it can meet a deadline deterministically it is a hard real-time OS.<ref>{{#invoke:citation/CS1|citation |CitationClass=book }}</ref>

An RTOS has an advanced algorithm for scheduling. Scheduler flexibility enables a wider, computer-system orchestration of process priorities, but a real-time OS is more frequently dedicated to a narrow set of applications. Key factors in a real-time OS are minimal interrupt latency and minimal thread switching latency; a real-time OS is valued more for how quickly or how predictably it can respond than for the amount of work it can perform in a given period of time.<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref>

Real-time operating system sections
Intro   Design philosophies    Scheduling    Intertask communication and resource sharing    Interrupt handlers and the scheduler    Memory allocation    Examples    See also    References   

PREVIOUS: IntroNEXT: Design philosophies