As we know that on a single Computer we can perform many operations at a time so that Management is also necessary on all the running processes those are running on the System at a time.
With the help of the Multi-programming we can execute many programs at a time.
Controlling and providing the Memory to all the processes Operating System uses the concept of Disk Scheduling.
In this the time of CPU is divided into the various processes and also determines that all the processes will work properly.
So that Disk Scheduling will specifies that at which time which process will be executed by the CPU.
Scheduling means to execute all the processes those are given to a CPU at a Time.
Scheduling is used for divide the total time of the CPU between the numbers or processes So that the processes can execute concurrently at a single time.
For Sharing the time or for dividing the total time of the CPU, the CPU uses the following the Scheduling Techniques.
§ First in First Out Scheduling
§ Shortest Seek Time First Scheduling
§ SCAN Scheduling
§ Circular SCAN Scheduling
§ Look Scheduling
§ Circular Look Scheduling
§ It is the simplest form of Disk Scheduling.
§ As the name suggests, request that arrives first will be served first.
§ It processes the I/O requests in the sequential order that in the same order as they arrive.
§ This method improves the response time as a request gets response in fair amount of time.
§ But the through put is not efficient and this algorithm fails tp decrease the average seek time.
§ It involves a lot of random head movements and disk rotations.
§ This algorithm is used in small systems where I/O efficiency is not very important.
This figure shows total head movement of 640 cylinders.
§ In this technique the Operating System will search for the Shortest time means this will search which job will takes a less time of CPU for running. Even this job is not the first one in the queue.
§ After examining all the jobs, all the Jobs are arranged in the sequence wise or they are organized into the priority order.
§ The Priority of the process will be the total time which a process will use for execution.
§ The Shortest Seek Time will include all the time means time to enter and time to completion of the process.
This figure shows total head movement of 236 cylinders.
§ It provides better performance than FIFO.
§ It produces less number of head movements.
§ It reduces total seek time compared to FCFS
§ Throughput is higher than FIFO.
§ SSTF is useful in batch processing systems where throughput is major issue.
§ Some process has to wait for a long time until it requests are satisfied.
§ Starvation is possible; stay in one area of the disk if very busy.
§ In SCAN Algorithm, the disk arm starts at one end of the disk, and moves towards the other end, servicing requests as it reaches each cylinder, until it gets to the other end of the disk.
§ After reaching the other end, the direction of head movement is reversed and servicing continuous.
§ This algorithm is also known as Elevator Algorithm.
§ The disk arm behaves like an elevator in building, first servicing all the requests going up and then reversing to service requests the other way.
§ For Example:
This figure shows total head movement of 208 cylinders.
§ Throughput is better than FIFO.
§ It also considers the starvation of request. For this, It is better than SSTF.
§ It reduces variance compared to SSTF.
§ The major disadvantage of this algorithm is that the disk arm always starts from the beginning, no matter other number of requests are present on the other end of the disk.
§ This algorithm is an enhancement over SCAN Algorithm.
§ It provides a more uniform wait time.
§ Just like SCAN, C-SCAN moves the head from one end of the disk to other, servicing the requests along the way.
§ When the disk arm reaches the end, It quickly returns to the other end, without fulfilling any request in the way.
§ For Example:
The total head movement for this algorithm is only 187 cylinders, but still this isn’t the moose sufficient.
§ In SCAN, the most outer and inner cylinders have less opportunity to be accessed than the ones in the middle.
§ However C-SCAN eliminates this by satisfying requests only when the head moves in one direction and not satisfying any requests when it moves back.
§ This algorithm is the improved version of SCAN Scheduling.
§ SCAN Algorithm moves the disk arm across the full width of the disk.
§ But in LOOK Algorithm, the arm does not move full width; It goes only as far as the final request in each direction.
§ When it knows that there is no request beyond the current point; it changes the direction of head.
§ This improves both throughput and response time.
§ It is called LOOK Algorithm because it looks for a request before continuing to move in a given direction.
§ For Example:
This figure shows total head movement of 241 cylinders.
§ This algorithm is the improved version of C-SCAN Scheduling.
§ C-SCAN Algorithm moves the disk arm to full width of the disk.
§ But C-LOOK, arm goes till the last request in each direction resulting in higher throughput and response time.
§ For Example:
C-SCAN had a total movement of 187 but this scan (C-LOOK) reduced it down to 157 tracks.
Selecting a Disk-Scheduling Algorithm:
§ SSTF is common and has a natural appeal
§ SCAN and C-SCAN perform better for systems that place a heavy load on the disk.
§ Performance depends on the number and types of requests.
§ Requests for disk service can be influenced by the file-allocation method.
§ The disk-scheduling algorithm should be written as a separate module of the operating system, allowing it to be replaced with a different algorithm if necessary.
§ Either SSTF or LOOK is a reasonable choice for the default algorithm.