How fork() Works Internally

UNIX fork+exec vs spawn()

The Four Core System Calls

What is Process Creation?

Chapter 24: Process Creation

📁 timerfd API

🔁 Timer Overruns & Thread Notification

⏱️ POSIX Interval Timers

🔬 clock_nanosleep()

🕰️ POSIX Clocks

😴 Suspending Execution — Sleeping

Timeouts on Blocking Operations

⏱️ Timer Scheduling & Accuracy

Linux Timers & Sleeping

22.12 & 22.13 — IPC with Signals & Legacy APIs

22.9 – 22.11 Waiting for Signals Safely

22.8 — Realtime Signals

22.6 & 22.7 — Timing, Order & Portability

22.3 – 22.5 Sleep States, Hardware Signals & Sync/Async

22.2 — Special Cases for Signal Delivery

22.1 — Core Dump Files

Chapter 22: Signals — Advanced Features

Chapter 21.5 — Interruption & Restarting of System Calls

Chapter 21.4 — The SA_SIGINFO Flag

Chapter 21.3 — Alternate Signal Stack: sigaltstack()

Chapter 21.2 — Other Ways to Terminate a Signal Handler

Chapter 21.1.3 — Global Variables & sig_atomic_t

Chapter 21.1.2 — Reentrant & Async-Signal-Safe Functions

Chapter 21.1 — Designing Signal Handlers

Chapter 21 — Signals: Signal Handlers

Ch20 – Signals: Fundamental Concepts

Ch20.18 – Waiting for a Signal: pause()

Ch20.17 – sigaction()

Ch20.16 – Signals Are Not Queued

Ch20.15 – sigpending()

Ch20.14 – sigprocmask()

Ch20.13 – Signal Sets (sigset_t)

Ch20.12 – strsignal(), psignal() & sys_siglist

Ch20.11 – raise() & killpg()

Ch20.10 – Null Signal & Process Existence Check