Hands-On Systems Programming with Modern Tooling
[Bare-Metal Coding] --> [Kernel Hacking] --> [Cloud-Scale Debugging]
\ | /
\ | /
V [Visual Debugging] V
| Week | Focus Area | Industry Tool | Visual Output |
|---|---|---|---|
| 1-4 | Process Management | strace, perf |
Process Tree Animations |
| 5-8 | Memory Systems | Valgrind, eBPF |
Memory Heatmaps |
| 9-12 | File Systems | FUSE, ext4debug |
FS Structure Visualizers |
-
Linux Scheduler Modding
- Alter CFS parameters
- Visualize CPU share distribution
- Sample Solution
-
Kernel Module Development
- Create character device driver
- Interactive debugging with
kgdb - Starter Code
-
Container Internals
- Build container runtime from scratch
- Namespace/cgroup visualization
- Tutorial
# Preconfigured Dev Container
git clone https://github.com/UAPians/CSE-406-OS-Lab
cd CSE-406-OS-Lab
docker-compose up -d lab-env
# Includes:
# - QEMU ARM/x86 VMs
# - Kernel Debugging Tools
# - Performance Monitoring Suite- Create branch:
lab<number>-<your-id> - Include:
- Code with documentation
- Visual explainer (SVG/HTML)
- Performance metrics
- Submit PR with Lab Report Template
pie title OS Lab Skills Distribution
"Systems Programming" : 35
"Performance Analysis" : 25
"Debugging" : 20
"Cloud Infrastructure" : 20