1: Memory & Control - Expanded Projects

Goal: Build a deep, practical model of memory and control flow in C by completing six real-world projects that expose stack/heap behavior, safe APIs, memory debugging, and exploitation defenses.

Project Index

# Project Core Topics Difficulty Time
1 Memory Inspector Tool Virtual memory, /proc, pointer formatting Intermediate 8-12 hrs
2 Safe String Library C strings, invariants, bounds checking Intermediate 10-16 hrs
3 Memory Leak Detector Ownership, tracking, leak reports Intermediate 12-20 hrs
4 Arena Allocator mmap, alignment, bump allocation Intermediate 10-16 hrs
5 Exploit Lab (Buffer Overflow) Stack layout, mitigations, deterministic lab Advanced 15-25 hrs
6 Mini Text Editor (Capstone) TUI input, gap buffer, undo/redo Advanced 20-40 hrs
  1. Memory Inspector Tool: See real addresses and regions.
  2. Safe String Library: Design safe APIs in C.
  3. Arena Allocator: Build fast allocation primitives.
  4. Memory Leak Detector: Make ownership visible.
  5. Exploit Lab: Understand how memory bugs become control-flow bugs.
  6. Mini Text Editor: Integrate everything into a real system.

Why This Sprint Matters

Memory mastery is what separates “I can write C” from “I can debug C in production.” These projects teach you how memory actually behaves, how bugs happen, and how to design safer systems even when the language is unsafe.

Essential Books

  • “Computer Systems: A Programmer’s Perspective” (Bryant & O’Hallaron)
  • “Effective C” (Seacord)
  • “Expert C Programming” (van der Linden)
  • “Advanced Programming in the UNIX Environment” (Stevens)

Total Estimated Time: 4-6 weeks of focused practice