Skip to main content

Concurrency and Synchronization: Reading Guide

Primary source and scope​

Use Operating Systems: Three Easy Pieces for atomicity, locks, condition variables, and deadlock. Find these topic headings in your edition; section numbering can differ. Start with the module concepts and worked examples.

Read actively​

Trace legal interleavings in the concurrency chapters. Define the protected invariant and the predicate associated with every condition-variable wait.

When to stop and when to go deeper​

For the compact path, stop once you can solve the transfer task, explain its assumptions, and pass the guided lab. For the full-book path, this assignment is a checkpoint within your scheduled whole-book reading, not permission to skip the remaining book. Additional sources belong in a question log until they address a specific failure.

Required queue-contract extension​

Complete Bounded queues, wakeups and graceful close and all CQ1–CQ6. This 22–32-hour package replaces the former three-hour queue exercise; original concurrency practice remains required.