Skip to content

YukioZzz/Praktikum_AdvancedSystemProgramming

Repository files navigation

This project belongs to the practical course Advanced Systems Programming in C/Rust

  1. task1_syscalls: use syscall API and asm assembly to implement read/write; use ptrace mechanism to trace a subprocess's read/write syscall and its return value
  2. task2_fileio: use FUSE API to implement a in-memory filesystem
  3. task3_process: implement an interactive shell(including pipeline and builtin commands)
  4. task4_concurrency: implement spinlock(based on CAS), lock-based hashmap and lock-free hashmap
  5. task5_memory: implement an efficient heap memory management(malloc, free, calloc, realloc) by reusing/spliting/merging free blocks; implement a thread-safe malloc by TLS
  6. task6_sockets: implement a TCP/IP server(with multithreaded epoll) and client
  7. task7_performance: gdb, perf, bcc, flamegraph, etc.
  8. task8_container: build a sandbox based on the Linux namespace mechanism

About

Practical Courses

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published