A comprehensive CPU scheduling simulation and visualization project with both web and native applications.
This repository contains two main applications:
A macOS native application built with SwiftUI (frontend in app) and C/C++ (backend in backend) that provides CPU scheduling simulation and visualization.
Features:
- Interactive CPU scheduling simulator
- Support for multiple scheduling algorithms (FCFS, SJF, Priority, Round Robin, etc.)
- Real-time Gantt chart visualization
- Performance metrics analysis
- Algorithm comparison tools
- System monitoring capabilities
- Educational tutorials
Tech Stack:
- Swift
- SwiftUI
- C/C++ (Backend)
- macOS native APIs
Getting Started:
cd native-app/app
# Open in Xcode
open CPUSchedulerUI.xcodeprojA modern web application built with React and Vite for CPU scheduling simulation and learning.
Features:
- Interactive web-based scheduling simulator
- Multiple scheduling algorithms implementation
- Visual Gantt charts and metrics
- Algorithm comparison view
- Educational content
- Dark/Light theme support
- Responsive design
Tech Stack:
- React
- Vite
- TailwindCSS
- Shadcn UI
Getting Started:
cd web-app
npm install
npm run devThis project provides educational tools for understanding CPU scheduling algorithms used in operating systems. Both applications offer similar features but cater to different platforms and use cases:
- Native App: Best for macOS users seeking a native desktop experience with system integration
- Web App: Cross-platform solution accessible from any modern web browser
Both applications implement the following CPU scheduling algorithms:
- First Come First Served (FCFS)
- Shortest Job First (SJF)
- Shortest Remaining Time First (SRTF)
- Priority Scheduling (Non-preemptive)
- Priority Scheduling (Preemptive)
- Round Robin (RR)
Contributions are welcome! Please feel free to submit a Pull Request.