Prerequisites and Expectations
- Formal prerequisite: CSC 302.
- Practical skills you need:
- C programming: pointers, arrays, structs, the stack.
- Linux command line: SSH, files, processes, permissions.
- GDB basics: breakpoints, stepping, inspecting memory and registers.
- x86 / x86-64 fundamentals: registers, calling conventions, the stack frame.
- If any of these are rusty, budget extra time in the first two weeks. Lab 1 is designed to rebuild these muscles.
Key Takeaway
Comfort with C, Linux, GDB, and x86 assembly is the price of admission. We will sharpen it, not teach it from zero.