第二籯操作系统 第三章冼程的同步与通信 选程的同步关系 选程的同步原则 信号量与P、V操作 选程的通信
第三章 进程的同步与通信 第二篇 操作系统 进程的同步关系 进程的同步原则 信号量与P、V操作 进程的通信
进程的同步 进程同步问题的提出 ◆进程异步推进可能造成混乱 ◆混乱可能导致不可再现 进程同步目标 维持进程并发性一进程执行异步(断续)结果不 以提高系统效率资源的非封闭(共享)可再现 进程同步 进程间相互合作 资源有效共享 结果可再现
进程的同步 ◼ 进程同步问题的提出 ◆进程异步推进可能造成混乱 ◆混乱可能导致不可再现 ◼ 进程同步目标 维持进程并发性 以提高系统效率 进程执行异步(断续) 资源的非封闭(共享) 结果不 可再现 进程同步 进程间相互合作 资源有效共享 结果可再现
选程的同步关系 31进程同步的基本概念 ■311进程间的两种主要关系 ◆进程间的关系与进程间的独立性 c进程间的关系是在进程间相对独立的前提下发 展的 ÷独立获得资源 独立调度
进程的同步关系 ◼ 3.1进程同步的基本概念 ◼ 3.1.1进程间的两种主要关系 ◆进程间的关系与进程间的独立性 进程间的关系是在进程间相对独立的前提下发 展的 ❖独立获得资源 ❖独立调度
进程闫的同步关系(_) 司机 售票员 正常行车。冒∞售 作 到站停车 可日日日日日日日日百 开车门 检查车况 维持秩序 作 开车 关车门
进程间的同步关系(一) 正常行车 到站停车 开车 售票 开车门 关车门 司机 售票员 合作 合作 检查车况 维持秩序
选程间的同步关系(二) 打印进程1 打印进程2 获得打印数据 获得打印数据 打印 打印 互斥
获得打印数据 进程间的同步关系(二) 打印进程1 打印进程2 打印 打印 互斥 获得打印数据
选程间的同步关系(三) 诉算短程 完成数据计算 打印进程 计算结果送到Bufe 互斥通知计算进程 通知打印进程打印 到合作 送下一个数 eS「从 Buffer中取数 打印
进程间的同步关系(三) 计算进程 打印进程 计算结果送到Buffer 从Buffer中取数 Buffer 互斥 完成数据计算 打印 通知打印进程打印 通知计算进程 合作 送下一个数
选程间的同步关系 相互合作 司机与售票员 计算者与打印者 竟争资源 多个打印者
进程间的同步关系 司机与售票员 多个打印者 计算者与打印者
司机 售票员 正常行车 售票 否 同步 卜到站停车 到站停车 叶叶中 开车门是 [检查车况] 关车 维持秩序 开车 同步 关车门
正常行车 到站停车 开车 售票 开车门 关车门 司机 售票员 同步 同步 到站停车 否 是 检查车况 否 维持秩序 关车门 是
同步实现初探(二) 打印进程1 打印进程2 获得打印数据 获得打印数据 否 打印机可用?> 打印机可用? 是 设置打印机为不可用 设置打印机为不可用 打印 打印 互斥
同步实现初探(二) 打印进程 1 打印进程 2 打印 打印 互斥 获得打印数据 获得打印数据 打印机可用? 设置打印机为不可用 是 否 打印机可用? 设置打印机为不可用 是 否
同步实现初探(三) 计算进程 打印进程 完成数据计算 互斥 计算结果送到 Buffer Buffer空 向打印进程发信号 Buffer 通知其从 Buffer里取数 从 Buffer中取数 否 互斥 Buffer空? 作 打印 向计算进程发信号 是 通知其向Bufe送数
同步实现初探(三) 计算进程 打印进程 计算结果送到Buffer 从Buffer中取数 Buffer 互斥 互斥 向打印进程发信号 通知其从Buffer里取数 Buffer空? 否 是 完成数据计算 打印 向计算进程发信号 通知其向Buffer送数 Buffer空? 否 是 合作