How anamosa101-coder/pbl works
This repository is a collection of OS-concept demonstrations and simulators, not one integrated application. Users run standalone IPC examples, operate a multi-process command simulator, or enter process data into a CPU scheduler; the web simulators cover deadlock and page replacement. The graph preserves those separate learning workflows and their domain stages. Some web and week-2 internals are represented by their exact enclosing directories because their source was not sampled; dashed links mark relationships not verified in excerpts.
Main entry points: core.c Simulator Core · scheduler.c Scheduler CLI · ui.c Command UI · sender.c Queue Sender
Components 17
IPC Demos
- Anonymous Pipe
pipes/pipe_demo.c - Queue Sender
msgqueue/sender.c - Queue Receiver
msgqueue/receiver.c - Shared Writer
sharedmem/writer.c - Shared Reader
sharedmem/reader.c - Socket Client
sockets/client.c - Socket Server
sockets/server.c
Multi-Process Simulator
- Command UI
week2/ui.c - Simulator Core
week2/core.c - Logger Process
week2/logger.c
CPU Scheduling
- Scheduler CLI
week3/scheduler.c - Scheduling Algorithms
week3/algorithms.c - Schedule Results
week3/scheduler.h - Gantt And Metrics
week3/gantt.c
Web Simulators
- Deadlock Simulator
week4/index.html - Page Replacement
pagereplace/index.html
Other components
- Learner
Connections 21
- Learner → Anonymous Pipe: runs demo
README.md - Learner → Queue Sender: runs sender
README.md - Learner → Queue Receiver: runs receiver
README.md - Queue Sender → Queue Receiver: sends messages
README.md - Learner → Shared Writer: runs writer
README.md - Learner → Shared Reader: runs reader
README.md - Shared Writer → Shared Reader: writes shared data
sharedmem/writer.c - Learner → Socket Client: runs client
README.md - Learner → Socket Server: runs server
README.md - Socket Client → Socket Server: exchanges messages
sockets/client.c - Learner → Command UI: enters commands
week2/ui.c - Command UI → Simulator Core: sends commands
week2/ui.c - Simulator Core → Command UI: returns replies
week2/ui.c - Simulator Core → Logger Process: sends log entries
week2/core.c - Learner → Scheduler CLI: provides processes
week3/scheduler.c - Scheduler CLI → Scheduling Algorithms: runs algorithms
- Scheduling Algorithms → Schedule Results: produces results
week3/algorithms.c - Scheduler CLI → Gantt And Metrics: displays results
- Gantt And Metrics → Schedule Results: formats schedule
week3/gantt.c - Learner → Deadlock Simulator: uses simulator
README.md - Learner → Page Replacement: uses simulator
README.md