Simulation and performance comparison of four disk scheduling algorithms

Hard disks are being used to store huge amounts of information/data in all modern computers. Disk drives must provide faster access times in order to optimize the speed of I/O operations. In a multitasking system with many processes, disk performance can be improved by incorporating a scheduling algorithm for maintaining several pending requests in the disk queue. This paper describes the development of a simulator which uses four disk scheduling algorithms to measure their performance in terms of total head movement. These algorithms are: FCFS (First-Come, First-Served), SSTF (Shortest-Seek-Time-First), LOOK (Look-ahead) for both upward and downward directions, and C-LOOK (Circular LOOK). Five different types of test samples, containing from 8 to 50 request tracks, have been used to obtain simulation results. The developed simulator runs successfully in a multiprogramming environment and the tabulated results demonstrate that the LOOK (downward direction) algorithm provides the best results for given test samples due to the reduction of a large number of unnecessary head movements. As several wild swings are experienced by the FCFS scheme, it gives the worst scheduling performance. SSTF is much better compared to LOOK (upward direction) and C-LOOK. It has also been noticed that LOOK is more efficient than C-LOOK at all loads, whereas C-LOOK is better at high loads only, as it reduces the starvation problem. The performance of each algorithm, however, depends heavily on the number and type of requests.