Operating System - CPU Scheduling Criteria
CPU scheduling criteria helps to compare and choose the CPU scheduling algorithm which works best for us. We are going to learn about the 5 important criteria: CPU utilization, Throughput, Turnaround time, Waiting time and Response time.
To minimize the idle time of CPU, CPU can be utilized all the time. However, in case of real systems, CPU utilization should have the range from 30%(light loaded) to 80%(heavy loaded).
CPU Scheduling - Throughput
CPU Throughput refers to the number of processes completed per unit time. In case of long processes, it may be one process per hour whereas for short processes, it may be 10 processes per second.
CPU Scheduling - Turnaround Time
It is the time duration from process submission to process execution completion.
It is the sum of
- time taken to get memory allocation
- waiting time spent in the ready queue
- execution time on CPU
- I/O time taken
CPU Scheduling - Waiting Time
It is the time taken waiting in the ready queue.
CPU Scheduling - Response time
It is the amount of time taken from the request submission until the first response is produced.
The main goal of any CPU scheduling algorithm is:
- to maximize the CPU utilization and throughput and
- to minimize the turnaround time, waiting time and response time