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