Skip to content

An application for executing various CPU scheduling algorithms, and also comparing with a default algorithm to interpret the numerous parameters of Scheduling algorithms and gain an understanding of the working of CPU scheduling algorithms.

Notifications You must be signed in to change notification settings

aaditagarwal/interactive_cpu_scheduler

 
 

Repository files navigation

Interactive CPU Scheduler

This is a GUI application which provides a dynamic and interactive interface to compare and evaluate CPU scheduling algorithms.

CPU Scheduling Algorithms included:

  1. First Come First Serve (FCFS)
  2. Shortest Job First (SJF)
  3. Shortest Time Remaining First (SRTF) (Pre-emptive SJF)
  4. Priority Queue (Non Pre-emptive)
  5. Priority Queue (Pre-emptive)
  6. Round Robin with a range of time quanta available
  7. Multi-Level Queue with custom levels
  8. Multi-Level Feedback Queue with custom levels
  9. Also a default algorithm is provided for comparison which is based on general algorithms used in common operating systems.

Requirements

We recommend using Python 3.7.x for this application as Tkinter comes bundled with Python from 3.7 onwards.

Instructions

git clone https://github.com/aitikgupta/interactive_cpu_scheduler.git
cd interactive_cpu_scheduler
pip install -r requirements.txt
python3 gui.py

Output Parameters:

  1. Average Waiting Time
  2. Average Response Time
  3. Average Turnaround Time
  4. Throughput

Contributors:

  1. Aadit Agarwal
  2. Aashish B Khatri
  3. Abhishek Jindal
  4. Aitik Gupta
  5. Himanshu Ruhela
  6. Madhavik Agarwal

About

An application for executing various CPU scheduling algorithms, and also comparing with a default algorithm to interpret the numerous parameters of Scheduling algorithms and gain an understanding of the working of CPU scheduling algorithms.

Topics

Resources

Stars

Watchers

Forks

Languages

  • Python 100.0%