What CPU Scheduling? Describe CPU Scheduling Criteria?


4 Answers

Muhammad Azhar Profile
Muhammad Azhar answered
A major task of an operating system is to manage a collection of processes. In some cases, a single process may consist of a set of individual threads.
In both situations, a system with a single CPU or a multi-processor system with fewer CPU's than processes has to divide CPU time among the different processes/threads that are competing to use it. This process is called CPU scheduling.

CPU Scheduling Criteria:
There are many scheduling algorithms and various criteria to judge their performance. Different algorithms may favor different types of processes. Some criteria are. as follows:
• CPU utilization: CPU must be as busy as possible in performing different tasks. CPU utilization is more important in real-time system and multi-programmed systems.
• Throughput: The number of processes executed in a specified time period is called throughput. The throughput increases .for short processes. It decreases if the size of processes is huge.
• Turnaround Time: The amount of time that is needed to execute a process is called turnaround time. It is the actual job time plus the waiting time.
• Waiting Time: The amount of time the process has waited is called waiting time. It is the turnaround time minus actual job time.
• Response Time: The amount of time between a request is Submitted and the first response is produced is called response time.
A CPU scheduling algorithm should try to maximize the following:
• CPU utilization
• Throughput
A CPU scheduling algorithm should try to minimize the following:
• Turnaround time
• Waiting time
• Response time
Anonymous Profile
Anonymous answered
CPU scheduling is the task of selecting a waiting process from the ready queue and allocating the CPU to it. The CPU is allocated to the selected process by the dispatcher.
Different algorithms are used for CPU scheduling. FCFS (First-come First-served) scheduling is the simplest scheduling algorithm, but it can cause short processes to wait for very long processes. Round-robin algorithm is preferred for a time-shared system.
Each CPU scheduling algorithm has some properties which are different from others. Criteria for CPU scheduling depend on scheduling algorithms. CPU scheduling criteria is given below.

(1) CPU Utilization: Actually, a CPU must be busy at any time. Range of CPU utilization is from 0 to 100 percent. For a tightly loaded system this range must be above 40 % and for a heavily used system this range must be around 90%.
(2) Throughput: If the CPU is busy then it means that some work is being done by computer. Number of processes completed per time unit is known as throughput. This rate depend son the size of processes. For a long process this rate may be two processes per hour.
(3) Turnaround Time: The time taken by a process during its submission and completion is known as turnaround time.
(4) Waiting Time: We can define waiting time as it is the sum of the periods in the ready queue as waiting.
(5) Response Time: Time duration between the submission of a request until the first response is produced.
Anonymous Profile
Anonymous answered
A Multi Programming operating system is designed to process more than one tasks at a time. The way OS manages allocation of CPU to the processes in ready queue is known as CPU scheduling.
Anonymous Profile
Anonymous answered
The way the CPU is allocated to the jobs or process which are waitinng  in the ready Queue.

Answer Question