Skip to content

ENGaliyasser/OS_Schedular_GUI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 

Repository files navigation

OS_Schedular_GUI

CPU Scheduler GUI Application

This project is a CPU scheduler desktop application implemented using Qt framework in C++. The application supports various types of scheduling algorithms and provides a graphical user interface for visualizing the scheduling process.

Features

  • Supports multiple scheduling algorithms:
    1. First-Come, First-Served (FCFS)
    2. Shortest Job First (SJF) - Preemptive and Non-Preemptive
    3. Priority Scheduling - Preemptive and Non-Preemptive
    4. Round Robin
  • Dynamically add processes while the scheduler is running.
  • Live visualization of the scheduling process through a Gantt chart.
  • Calculation of average waiting time and average turnaround time.
  • Live updating of the remaining burst time table as time progresses.
  • Option to run existing processes without live scheduling.

Requirements

  • Qt framework
  • C++ compiler (e.g., GCC)

Usage

  1. Clone the repository to your local machine:
git clone https://github.com/your-username/cpu-scheduler.git
  1. Open the project in Qt Creator or any other IDE that supports Qt projects.

  2. Build the project to generate the executable file.

  3. Run the executable file (cpu_scheduler.exe on Windows) to launch the application.

  4. Select the desired scheduling algorithm from the dropdown menu.

  5. Enter the required information about each process according to the selected scheduler type.

  6. Optionally, dynamically add new processes while the scheduler is running.

  7. Visualize the scheduling process through the live-updated Gantt chart.

  8. View the average waiting time, average turnaround time, and the remaining burst time updated table.

Acknowledgments

  • Special thanks to Qt for providing the powerful framework for developing GUI applications.

Feel free to modify and enhance the project as needed. If you encounter any issues or have suggestions for improvements, please create an issue or submit a pull request on GitHub. Thank you for using our CPU Scheduler GUI Application!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published