Chapter 1: Introduction

Chapter 2: System Model

Chapter 3: Inter-process Communication

Chapter 4: Distributed objects and Remote Method Invocation

Chapter 5: Multithreading and Synchronization

Chapter 6: Group Communication

Chapter 7: Time and Global States

Chapter 8: Coordination and Agreement

Chapter 9: Transactions and Concurrency Control

Chapter 10: Distributed Transactions

Chapter 11: Designing Distributed Systems: Google Case Study