Fixed-priority pre-emptive scheduling

Source: Wikipedia, the free encyclopedia.

Fixed-priority preemptive scheduling is a

real-time systems. With fixed priority preemptive scheduling, the scheduler ensures that at any given time, the processor executes the highest priority task
of all those tasks that are currently ready to execute.

The

lockout: since priority is given to higher-priority tasks, the lower-priority tasks could wait an indefinite amount of time. One common method of arbitrating this situation is aging, which gradually increments the priority of waiting processes and threads, ensuring that they will all eventually execute. Most real-time operating systems
(RTOSs) have preemptive schedulers. Also turning off time slicing effectively gives you the non-preemptive RTOS.

Preemptive scheduling is often differentiated with cooperative scheduling, in which a task can run continuously from start to end without being preempted by other tasks. To have a task switch, the task must explicitly call the scheduler. Cooperative scheduling is used in a few RTOS such as Salvo or TinyOS.