- A CPU scheduler determines an order for the execution of its scheduled processes; it decides which process will run according to a certain data structure that keeps track of the processes in the system and their status.
- A process, upon creation, has one of the three states: Running, Ready, Blocked (doing I/O, using other resources than CPU or waiting on unavailable resource).
- Consider a Computer with 1-CPU and 1024 bytes memory . Our scheduler implemented the complementary components as sketched in the following diagrams.
📌 NOTE:
We are supporting the following Scheduling algorithms:
- HPF (Highest Priority First)
- STRN (Shortest Time Remaining Next)
- RR (Round Robin)
This is an list of needed instructions to set up your project locally, to get a local copy up and running follow these instructions.
- Any unix based system
- GCC compiler installed
- Clone the repository
$ git clone https://github.com/yousefosama654/Fedorix-OS.git
- Navigate to Phase1 Folder
$ cd Phase2
Running program
- First remove the old files
$ make clean
- Build all the needed files
$ make build
- Run the test generator to generate a files of random procceses
$ make test
- Now run the scheduler
$ make run
- _For all automated run use _
$ make all
- C Programming Language
Yousef |
Eman |
Nesma |
Sara |