CS3502/project2/README.md
2025-10-28 22:15:17 -04:00

36 lines
878 B
Markdown

# CS3502 Project 2: CPU Scheduling Simulation
This directory contains a simulator for various CPU scheduling algorithms.
## Compilation
If you have [Nix](https://nixos.org/) installed:
```sh
nix run .#cpu-schedulers
```
Otherwise, the code may be compiled using GNU Make:
``` sh
make
./build/cpu-schedulers
```
## Usage
This program supports seven scheduling algorithms:
- `sjf` - Shortest Job First
- `fcfs` - First Come First Serve
- `roundrobin` - Round Robin
- `priority` - Priority Queue
- `priorityaging` - Priority Queue with Aging
- `lottery` - Lottery
- `srtf` - Shortest Remaining Time First
The `compare` option can also be entered to run all schedulers at once.
Test data must be entered by the user; all time values must be given in
integers. Flags include `-v` for verbose debug output, and `-m` for
machine-readable output (prints data in CSV format).