CPU scheduling and criteria of scheduling.

In this topic, you will learn about, CPU scheduling and the criteria of scheduling.

CPU scheduling:

CPU scheduling is a way of scheduling activity. It is used to keep all computer resources busy which allows many users to use or share system resources effectively and also helps to achieve quality service. Due to CPU scheduling multitasking became possible and now we can execute more than one process at a time on a single processor. In CPU scheduling, Preference is given to anyone depending upon the user’s needs and objectives. It can aim at only one goal at a time.

For example: maximizing the output and input, minimizing response time, giving equal CPU time to each process, or appropriate times according to the priority and workload of each process.

Criteria of scheduling:

Scheduling Criteria of CPU for a scheduler varies from one scheduler to another. There are many scheduling algorithms. Different scheduling algorithms have different properties. The selection of a proper scheduling algorithm may improve system performance.

  1. CPU Utilization Scheduling Criteria: The CPU must be busy as much as possible to perform different activities.CPU utilization is very important in real-time and multiprogramming system. In a real-time system, the CPU utilization should be 50 percent (lightly loaded system) to 95 percent (heavily loaded system). It means that the load on a system affects CPU utilization. The high CPU utilization is achieved on a heavily loaded system.
  2. Balanced Utilization Scheduling Criteria: Balanced utilization represents the percentage of the time at the resource utilized. In addition to considering the CPU utilization of memory, I/O devices and other system resources are also considered.
  3. Through Put Scheduling Criteria: The number of processes executed by the system in a specific period of time this time unit is called throughput. For a long process, this rate may be one process per minute. Similarly, for the short process, it may be 100 processes per minute.
  4. Turnaround Time Scheduling Criteria: Turnaround time represents the average period of time taken by a process executes. The turnaround time is computed by subtracting the time when the process was created from the time is terminated. The turnaround time is inversely proportional to throughput.
  5. Waiting Time Scheduling Criteria: Waiting time represents the average period of time, a process spends waiting in the ready queue to get a chance for execution. It does not include the time, a process is executing on the CPU or performing I/O. waiting time is also a very important factor to measure the performance of the system.
  6. Dispatcher: Another component involved in CPU scheduling is the dispatcher. The dispatcher is the module that gives the control of the CPU to the process selected by the short-term scheduler.

These functions involve:

  • Switching context.
  • Switching user mode.
  • Jumping to the proper location in the user program to restart.

Comment below if you have queries related to the above topic, CPU scheduling, and criteria of scheduling.