第六章 进程同步
- 6.1 背景
- 6.2 临界区问题
- 6.3 Peterson 算法
- 6.4 硬件同步
- 6.5 信号量
- 6.5.1 用法
- 6.5.2 实现
- 6.5.1 死锁与饥饿
- 6.6经典同步问题
- 6.6.1 有限缓冲问题
- 6.6.2 读者-写者问题
- 6.6.3 哲学家进餐问题
- 6.7 管程
- 6.7.1 使用
- 6.7.2 哲学家进餐问题的管程解决方案
- 6.7.3 基于信号量的管程实现
- 6.7.4 管程内的进程重启
- 6.8 同步实例
- 6.8.1 Solaris 同步
- 6.8.2 Windwos XP 同步
- 6.8.3 Linux 同步
- 6.8.4 Pthread 同步
- 6.9 原子事务
- 6.9.1 系统模型
- 6.9.2 基于日志恢复
- 6.9.3 检查点
- 6.9.4 开发原子操作