1. 4.1 System Callshistorical

    How user-space programs enter the kernel to request privileged services, how this differs from an ordinary function call, and why libc wrappers matter.

  2. 4.2 I/O Modelshistorical

    Blocking, non-blocking, readiness-based multiplexing, signal-driven I/O, asynchronous completion, and Reactor-style server architectures.

  3. 4.3 select, poll, and epollhistorical

    How Linux readiness APIs differ in descriptor representation, scanning cost, registration model, and level- vs. edge-triggered behavior.

  4. Linux I/Ohistorical

    File descriptors, page cache, buffered and direct I/O, blocking, readiness, and durable writes.

  5. 4.5 Zero-Copy I/Ohistorical

    Why zero-copy techniques reduce CPU-mediated data movement, with mmap, sendfile, page cache, DMA, and the limits of the term 'zero copy'.