The csapp labs are hands-on assignments from the "Computer Systems: A Programmer's Perspective" (CS:APP) course at Carnegie Mellon University, designed to teach computer systems concepts from a programmer's viewpoint. The labs cover topics like bit manipulation, assembly and reverse engineering, buffer overflows, cache optimization, building a shell, dynamic memory allocation, and creating a proxy server. Each lab provides a driver and automatic evaluation to give students feedback as they refine their solutions.
- Data Lab
- Bomb Lab
- Attack Lab
- Architecture Lab
- Cache Lab
- Shell Lab
- Malloc Lab
- Proxy Lab