This project implements fundamental Operating System algorithms using Python and Jupyter Notebook.
- Round Robin Scheduling
- Best Fit Memory Allocation
- Least Recently Used (LRU)
- Dynamic user input (no hardcoded values)
- Step-by-step execution
- Gantt Chart generation
- Performance calculations
- Fragmentation analysis
- Page fault tracking
- Graphical visualization using Matplotlib
- Algorithm comparison and analysis
- Python 3
- Jupyter Notebook
- Matplotlib
- Tabulate
OS_Project/
│
├── Operating_System_Project.ipynb
├── README.md
└── requirements.txt
Install required libraries:
pip install matplotlib tabulateOpen the notebook:
jupyter notebookThen run all notebook cells sequentially.
The project provides:
- Scheduling tables
- Waiting & Turnaround Times
- Memory allocation tables
- Frame status tracking
- Total page faults
- Performance graphs
The implemented algorithms are compared with alternative approaches to analyze:
- Performance
- Efficiency
- Advantages
- Disadvantages
- Use cases
This project demonstrates practical implementation of Operating System concepts and provides performance analysis of different algorithms through interactive execution and visualization.