Exercise 1: Why Reaping Orphaned Processes Is PID 1's Special Job — Possible Solution ==================================================================== Explanation: On Linux, every process (except PID 1 itself) has a parent process, and when a process finishes, its parent is normally expected to "collect" its exit status via a system call -- until that happens, the finished process lingers in the process table as a zombie. This is normally fine, since a well-behaved parent process cleans up after its own children promptly. The problem arises when a PARENT process itself dies before its own children do (or before it collects their exit status) -- the children become "orphaned," with no parent left to ever perform that cleanup. This is where PID 1's special role comes in: per the chapter's own description, PID 1 automatically adopts any orphaned process, becoming its new parent, and is specifically responsible for eventually reaping it once it finishes -- preventing it from permanently lingering as an unclaimed zombie. No other process on the system has this automatic adoption responsibility -- an ordinary process whose own parent dies doesn't get reassigned to some other random process; it's specifically PID 1, and only PID 1, that the kernel hands every orphan to. This is a structural guarantee built into how the kernel itself treats PID 1, not a role any other process could simply choose to take on. WHY THIS WORKS AS AN ANSWER ------------------------------ This explains the underlying mechanism (parent processes normally collect their children's exit status; orphaned children need someone else to do this) and why PID 1 specifically is the kernel's own designated adopter, rather than just restating that PID 1 "reaps processes" without explaining what that means or why it's unique to PID 1.