Real-time operating system (RTOS) software can host multiple software applications of varying levels and complexity on the same hardware. The RTOS software schedules and/or implements the execution of these multiple software applications on the same processors using the same system resources. The operation of the RTOS itself is dependent that specific algorithms be executed on time. Each software application can be referred to as a partition, with its own processor and memory requirements. In an RTOS environment, different partitions can be needed to perform their respective tasks at different rates and with different priorities.
An RTOS system can include a scheduler system which can analyze parameters (duration, priority, interrupt status, etc.) of the various applications to determine an execution schedule for the applications. A real-time scheduling system can include a scheduler, a clock, and processing hardware elements. RTOS systems can be modeled and evaluated based on the scheduler system's evaluation of the RTOS system's capability to meet an application software's process deadline.
Conventional scheduling systems perform scheduling analyses in terms of single-level scheduling, which require special-purpose analyses for multi-level scheduling analyses.