This project belongs to the practical course Advanced Systems Programming in C/Rust
- task1_syscalls: use
syscall APIandasm assemblyto implement read/write; useptracemechanism to trace a subprocess'sread/writesyscall and its return value - task2_fileio: use
FUSE APIto implement a in-memory filesystem - task3_process: implement an
interactive shell(including pipeline and builtin commands) - task4_concurrency: implement
spinlock(based on CAS),lock-based hashmapandlock-free hashmap - task5_memory: implement an efficient heap memory management(malloc, free, calloc, realloc) by reusing/spliting/merging free blocks; implement a
thread-safemalloc by TLS - task6_sockets: implement a TCP/IP server(with multithreaded
epoll) and client - task7_performance:
gdb,perf,bcc,flamegraph, etc. - task8_container: build a sandbox based on the Linux
namespacemechanism