Search your topic here

CPU Scheduling

CPU scheduling

CPU scheduling is a process which allows one process to use the CPU while the another process is on wait due to unavailability of resources (I/O, any Computer hardware, CPU programs etc).

The main aim of CPU scheduling is to make the system fast, fair, and efficient.

Different CPU scheduling?

In our study we will consider following CPU scheduling algorithm:

  • First come first serve (FCFS) scheduling
  • Shortest Job First (SJF) scheduling
  • Round Robin (RR) scheduling

Why CPU scheduling?

To get the best performance from the system CPU scheduling is used.

Throughput is the total number of processes completed per unit of time. For better CPU utilization throughput should be maximized.

CPU utilization:
CPU utilization is finding out is CPU executing any process or its idle.

Turnaround time:
Turnaround time means total time taken by the process till its entering inside the CPU to the end of its execution. For better CPU utilization turnaround time must be minimized.

Waiting time:
Waiting time means time taken by the process after its entering inside the CPU and not in execution. For better CPU utilization waiting time must be minimized.

Load average:

Load average is the average of number of processes waiting in queue for their turn to get execution. For better CPU utilization load average must be minimized.

Response time:
Response time is the amount of time when the process enters inside the CPU and gets its execution starting. For better CPU utilization response time must be minimized.


Response time = time of arrival to the time of starting execution.