Chapter 11. Low-level synchronization: Algorithms

11.1 Introduction

11.2 An example of semaphores in system design: The THE system

11.3 The producer–consumer, bounded buffer problem

11.4 Safety and liveness properties

11.5 The multiple readers, single writer problem

11.6 Limitations of semaphores

11.7 Eventcounts and sequencers

11.8 POSIX threads

11.9 Summary

11.10 Case study with exercises: Management of a disk block cache

Get Operating Systems: Concurrent and Distributed Software Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.