Some Basic Terminologies Of CPU Scheduling Algo

Intro of CPU Scheduling

It is also called as CPU scheduler. Its main objective is to increase system performance in accordance with the chosen set of criteria. It is the change of ready state to running state of the process. CPU scheduler selects a process among the processes that are ready to execute and allocates CPU to one of them

Why CPU Scheduling

As we know, Process involves both I/O time and CPU time. In a uni programming system like MS-DOS, time spent waiting for I/O is wasted and CPU is free during this time. In multi programming systems, one process can use CPU while another is waiting for I/O. This is possible only with process scheduling.

So The CPU scheduling improve its efficiency. It helps you to allocate resources among competing processes. The maximum utilization of CPU can be obtained with multi-programming.

Goals of CPU Scheduling

  • Fairness
  • Efficiency
  • Throughput
  • Minimize the Response time, Waiting time & Turn around time

Arrival Time

When a process enters in ready state, at this time is called Arrival time.

Burst Time

It is a time required by the process to complete execution. It is also called running time.

Completion Time

when process complete and exit from a system, this time is called Completion Time.

Turn Around Time

TAT = Completion Time - Arrival Time

Waiting Time

Waiting Time = Turn Around Time - Burst Time

CPU Scheduling Algorithms

There are Eight types of CPU scheduling algorithm is given below. Each algorithm is carrying some advantages and disadvantages.
The limitation of each algorithm leads to the evolution of a new algorithm.

  • FCFS scheduling algorithm
  • SJF scheduling(Shortest Job First)
  • SRTF scheduling
  • LJF scheduling
  • LRTF Scheduling
  • Round Robin scheduling
  • Priority scheduling
  • Multilevel Queue scheduling