A multithreaded CPU scheduling simulator written in C. Designed as university coursework to demonstrate concurrency, process scheduling, and resource management.
- Multiple CPUs simulated with
pthread - Round Robin and First-Come-First-Served (FCFS) scheduling
- Multi-level priority queues
- Semaphore-based synchronization
- I/O blocking and unblocking
- Load balancing between CPUs
- Rolling average response and turnaround time calculation
- C (GCC)
- POSIX threads (
pthread) - POSIX semaphores (
semaphore.h) - Custom doubly linked list implementation