Skip to main content

Section outline

    • Module 1: Introduction to Linux User Space (1 hour)

      • User space vs. kernel space
      • System calls interface overview
      • Linux programming tools introduction
    • Module 2: System Calls in Linux (2 hours)

      • Definition and usage of system calls in C
      • Common system calls: read, write, open, close, fork, exec
      • Practical: Writing system call programs
    • Module 3: User Space and Kernel Space Interactions (2 hours)

      • Memory management comparison
      • Context switching and kernel modules interaction
      • Hands-on: Using strace for system call inspection
    • Module 4: Debugging and Tracing Tools (2 hours)

      • Tools: strace, ltrace, gdb
      • Hands-on: Debugging user space programs with gdb
    • Module 5: Process Management in Linux (2 hours)

      • Process creation: fork(), exec()
      • Process states and scheduling
      • Signal handling
      • Lab: Writing process management programs
    • Module 6: Thread Management (2 hours)

      • POSIX threads (pthreads)
      • Thread synchronization (mutexes, semaphores)
      • Lab: Multi-threaded program implementation
    • Module 7: Memory Management (3 hours)

      • Virtual memory overview
      • Memory allocation: malloc, free, brk, mmap
      • Memory mapping and shared memory
      • Lab: Exploring memory allocation
    • Module 8: Inter-Process Communication (3 hours)

      • IPC mechanisms: Pipes, message queues, shared memory, semaphores
      • Socket programming for process communication
      • Lab: Implementing various IPC mechanisms
    • Module 9: Signals in Linux (1 hour)

      • Signal generation and handling (kill, signal, sigaction)
      • Lab: Signal handling programs
    • Module 10: Performance Optimization and Profiling (2 hours)

      • Tools: perf, valgrind
      • Code optimization techniques
      • Lab: Profiling and optimizing user space applications
    • Module 11: Final Project & Wrap-Up (1 hour)

      • Final project integrating core concepts
      • Course review and certificate distribution