How krishanuz/os-project works
This repository is a C operating-systems scheduling simulator built around process records in a sentinel-based doubly linked list. Its principal workflow is to provide a ready queue to a scheduling algorithm, compute timing metrics, and display the resulting records. The README also documents list insertion, removal, cleanup, and sorting. FCFS is implemented; SJF is only a stub, and the sampled sources do not show a complete user-facing execution path. Edges reflect visible calls or documented behavior; unsampled wiring is omitted.
Main entry points: node.c Process node · list.c Queue operations · scheduler.c FCFS scheduler
Components 8
Process records
- Process node
src/node.c
Ready queue
- List state
src/list.c - Queue operations
src/list.c - Process sorting
src/list.c - Metric display
src/list.c
Scheduling
- FCFS scheduler
src/scheduler.c - SJF stub
src/scheduler.c
Other components
- Caller
Connections 5
- Caller → FCFS scheduler: invokes
- List state → Process node: creates sentinels
src/list.c - Queue operations → Process node: inserts records
src/list.c - Queue operations → Process node: destroys records
src/list.c - FCFS scheduler → List state: reads queue
src/scheduler.c