Skip to content

Disk scheduling is done by operating systems to schedule IO requests arriving for the disk, this project simulates some disk scheduling algorithms like SSTF and more.

Notifications You must be signed in to change notification settings

MarwanGalal746/Disk-Scheduling

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Disk scheduling

📙 Summary

Hey! Disk scheduling is done by operating systems to schedule IO requests arriving for the disk, this project simulates some disk scheduling algorithms.

The algorithms which simulated in this project:

1- FCFS: It is the simplest of all the Disk Scheduling Algorithms. In FCFS, the requests are addressed in the order they arrive in the disk queue.

2- SSTF: (Shortest Seek Time First): It requests having shortest seek time are executed first.

3- SCAN: In SCAN disk scheduling algorithm, head starts from one end of the disk and moves towards the other end, servicing requests in between one by one and reach the other end. Then the direction of the head is reversed and the process continues as head continuously scan back and forth to access the disk.

4- C-SCAN: Circular SCAN (C-SCAN) scheduling algorithm is a modified version of SCAN disk scheduling algorithm that deals with the inefficiency of SCAN algorithm by servicing the requests more uniformly.

5- LOOK: It is advanced version of SCAN disk scheduling with a better seek time, it is like SCAN algorithm but it also looks ahead for more requests to be serviced in the same direction, if there are no pending requests in the the head then we reverse direction and start servicing requests in the opposite direction.

6- C-LOOK: C-LOOK is an enhanced version of both SCAN as well as LOOK disk scheduling algorithms. This algorithm also uses the idea of wrapping the tracks as a circular cylinder as C-SCAN algorithm but the seek time is better than C-SCAN algorithm. We know that C-SCAN is used to avoid starvation and services all the requests more uniformly, the same goes for C-LOOK.

🎯 ​Clone the project

$ git clone https://github.com/MarwanGalal746/Disk-Scheduling

💻 Running

Open terminal in the directory of our repository and type the following commands:

$ cd ./src

$ javac *

$ java Main.java

👥 Contributers

Eyad Youssef, Abdelrahman Ali, Abdelrahman Ammar and Marwan Galal.

About

Disk scheduling is done by operating systems to schedule IO requests arriving for the disk, this project simulates some disk scheduling algorithms like SSTF and more.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages