25. Basic Synchronization#

We first discuss mechanisms in unix to share memory and provide simple motivating examples for synchronization. We then discuss the idea of a critical section and locking, and then review different implementations of locks. The following chapter discusses some of the challenges of ordering thread events and introduces a key OS primitive, semaphores, to enable thread to block rather than spin.