Homeworks of System Programming (430.658) lecture, at 2022 Autumn.
Almost same as lab assignments of CSAPP.
HW1: bomblab
The bomb is comprised of 7 phases and a secret phase. Using debbugger and disassembler, you have to find the correct answers for each phase and diffuse the bomb.
HW2: buflab
The bomb reads a string from standard input. Causing buffer overflow, you have to trigger some functions.
HW3: malloclab
Implement own version of malloc
and free
using system calls managing heap memory. It have to work correctly and efficiently.
HW4: tshlab
Write a simple Unix shell program that supports job control. You will become familiar with the concept of process control and signalling.
HW5: dbglab
Using ptrace
system call, develop your own debugger - SNU Debugger.
HW6: proxylab
Write a simple HTTP proxy that caches web objects. It should work correctly, while dealing with multiple concurrent requests and caching web objects.