A highly interactive, beautifully designed visualization tool for Operating System scheduling algorithms.
View Live Demo »Operating Systems rely heavily on CPU Scheduling algorithms to ensure optimal performance and fair distribution of resources among processes. CPU Process Scheduling Visualizer brings these abstract mathematical concepts to life!
With a futuristic, dark-mode UI, you can manually input processes, choose your scheduling algorithm, and instantly generate Gantt Charts and Performance Metrics (Waiting Time, Turnaround Time, Completion Time).
- 🎨 Stunning UI/UX: Custom-designed dark mode with glowing animated grid backgrounds.
- 📊 Dynamic Gantt Charts: Watch how processes are sliced and executed over time.
- ⚡ Lightning Fast Engine: Client-side JavaScript ensures instant calculations with zero server lag.
- 📐 Accurate Metrics: Automatically calculates critical OS data metrics like average waiting and turnaround times.
| Algorithm | Type | Description |
|---|---|---|
| FCFS (First Come First Serve) | Non-Preemptive | The simplest algorithm. Processes are executed exactly in the order they arrive in the ready queue. |
| SJF (Shortest Job First) | Non-Preemptive | The CPU is assigned to the process with the smallest execution (burst) time to minimize average waiting time. |
| Priority | Non-Preemptive | Processes are scheduled based on an assigned priority number (lower number = higher priority). |
| Round Robin | Preemptive | Processes execute in a cyclic order for a fixed time slice (quantum) to ensure fairness and prevent starvation. |
- Visit the Live Site: Open the Simulator
- Input Processes: Enter your Process IDs, Arrival Times, and Burst Times. (Add Priorities if using Priority Scheduling).
- Select Algorithm: Pick your desired scheduling algorithm from the dropdown. If you choose Round Robin, don't forget to enter a Time Quantum.
- Execute: Click Run to generate the Process Results table and visualize the timeline on the Gantt chart!
If you'd like to run this locally or contribute to the project:
# Clone the repository
git clone https://github.com/Omcodesk/CPU-Scheduling-Algorithm-Visualizer.git
# Navigate into the directory
cd CPU-Scheduling-Algorithm-Visualizer
# Open index.html in your default browser