Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

💻 CSE 406 - Operating Systems Lab

Lab Documentation GitHub Classroom

Hands-On Systems Programming with Modern Tooling

         [Bare-Metal Coding] --> [Kernel Hacking] --> [Cloud-Scale Debugging]
                  \                   |                   /
                   \                  |                  /
                    V          [Visual Debugging]       V

🧪 Lab Roadmap

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

🔥 Featured Labs

  1. Linux Scheduler Modding

  2. Kernel Module Development

    • Create character device driver
    • Interactive debugging with kgdb
    • Starter Code
  3. Container Internals

    • Build container runtime from scratch
    • Namespace/cgroup visualization
    • Tutorial

🛠️ Lab Environment Setup

# 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

📊 Lab Submission Guide

  1. Create branch: lab<number>-<your-id>
  2. Include:
    • Code with documentation
    • Visual explainer (SVG/HTML)
    • Performance metrics
  3. Submit PR with Lab Report Template

🚀 Career Pathways

pie title OS Lab Skills Distribution
    "Systems Programming" : 35
    "Performance Analysis" : 25
    "Debugging" : 20
    "Cloud Infrastructure" : 20
Loading

About

Hands-On Systems Programming with Modern Tooling

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors