• A scheduler is an operating system program that decides the next job to be admitted for execution.
  • It selects a process from among the ready process to execute on the CPU.

Performance criteria for a scheduler

Various criteria or characteristics that constitute a good scheduling algorithm are:-
  1. CPU Utilization
  2. Throughput
  3. Response time
  4. Turnaround time
  5. Waiting time
  6. Fairness
  7. Balanced utilization
  8. Priority
Performance-criteria-for-a-scheduler

1.  CPU Utilization

A scheduling algorithm is designed to keep the CPU as busy as possible. It should make efficient use of the CPU.

2.  Throughput

Throughput refers to the amount of work completed in a unit of time. In other words, throughput is the number of jobs or processes executed in a unit of time.

3.  Response time

Response time is the amount of time it takes to start responding to the request.
OR
We also say that the amount of time it takes when a request was submitted until the first response is produced.

4.  Turnaround time

Turnaround time is the time between the moment of subdivision of a job/process and the time of its completion.
OR
We also say that the interval between the submission of the process and completion of the process.

5.  Waiting time

It is the amount of time a job spends in waiting for resource allocation when several jobs are competing in a multiprogramming system.
OR
Or we also say that the waiting time is the average period of time a process spends waiting for resources.

6.  Fairness

Avid the process from the starvation. Good computer hardware should confirm that every method gets its fair proportion of the processor.

7.  Balanced utilization

Utilization of memory, I/O devices, and other system resources are also considered. Not only CPU utilization for performance.

8.  Priority

Give preferential treatment to processes with higher priorities.