This Java program simulates various CPU scheduling algorithms, including Non-Preemptive Shortest-Job-First (SJF), Shortest-Remaining-Time-First (SRTF), Non-preemptive Priority Scheduling, and AG Scheduling. The AG Scheduling algorithm includes both non-preemptive and preemptive phases.
- Non-Preemptive Shortest-Job-First (SJF)
- Shortest-Remaining-Time-First (SRTF)
- Non-preemptive Priority Scheduling
- AG Scheduling:
- Round Robin (RR) with AG-Factor
-
Clone the Repository:
git clone https://github.com/AbdelrhmanReda17/cpu-schedulers-simulator.git
-
Open the project in NetBeans or IntelliJ
-
Run Main.java
-
Add Process Details (Burst, Arrival, Priority, Color)
- Easily edit or delete processes as needed.
-
Select Algorithm and Input Parameters
- Choose an algorithm and provide essential information such as Age, Quantum, and Context Switch.
-
Initiate Simulation
- The simulator will generate a Gantt chart using the jFreeChart Library, visually representing the flow of processes.
- A detailed process table will be generated, displaying information such as finish time, turnaround time, waiting time, and more.
- [NOTE IF YOU ARE USING AG] A detailed Quantum table will be generated to represent the change of the Quantum for each process
- This project is maintained by: Abdelrhman Reda, Mahmoud Adel, Abdelrhman Atef, AbdelrhmanAdel and Yassin Tareek and
- Feel free to explore and analyze the performance of different CPU scheduling algorithms with this simulator.