Process scheduling algorithms are the fundamental rules used by an operating system’s short-term scheduler to allocate CPU time among multiple competing tasks. Their primary goals are to maximize CPU utilization, ensure fairness, increase throughput, and minimize latency. Core Concepts & Metrics
To evaluate how well an algorithm performs, computer scientists measure specific time-based metrics:
Arrival Time: The exact moment a process enters the ready queue.
Burst Time: The total CPU time a process requires to finish executing.
Waiting Time: The total time a process spends sitting in the ready queue before execution.
Turnaround Time: The total lifespan of the process, calculated as Completion Time minus Arrival Time.
Response Time: The time taken from submitting a request until the CPU produces its very first response. Preemptive vs. Non-Preemptive Scheduling
Every scheduling algorithm falls into one of two behavioral categories:
Non-Preemptive: Once a process grabs the CPU, it keeps it until it finishes completely or voluntarily blocks (e.g., waiting for I/O).
Preemptive: The operating system can forcefully pause and interrupt a running process mid-execution to hand the CPU over to a different process. Common Scheduling Algorithms CPU Scheduling in Operating Systems – GeeksforGeeks
Leave a Reply