What is the difference between preemptive and non-preemptive scheduling?

Operating System Questions



38 Short 62 Medium 50 Long Answer Questions Question Index

What is the difference between preemptive and non-preemptive scheduling?

Preemptive scheduling is a type of scheduling in which the operating system can interrupt a running process and allocate the CPU to another process. In this type of scheduling, the operating system has the authority to decide when to switch between processes, based on priority or time quantum.

On the other hand, non-preemptive scheduling is a type of scheduling in which a running process cannot be interrupted by the operating system until it voluntarily releases the CPU. In this type of scheduling, the running process continues to execute until it completes its task or blocks for an I/O operation.

In summary, the main difference between preemptive and non-preemptive scheduling lies in the ability of the operating system to interrupt a running process. Preemptive scheduling allows the operating system to forcefully switch between processes, while non-preemptive scheduling relies on the running process to release the CPU.