os名进程同步.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
os名进程同步

进程的同步 进程同步问题的提出 进程异步推进可能造成混乱 混乱可能导致不可再现 进程同步目标 进程的同步关系 3.1进程同步的基本概念 进程间的两种主要关系 临界资源与临界区 进程同步必须遵循的原则 3.1.1进程间的两种主要关系 进程间的关系与进程间的独立性 进程间的关系是在进程间相对独立的前提下发展的 独立获得资源 独立调度 进程间的同步关系(一) 进程间的同步关系(二) 进程间的同步关系(三) 进程间的同步关系 同步实现初探(二) 同步实现初探(三) 进程间的同步关系 进程同步时面临的两种主要关系 临界资源 3.1.2 临界资源与临界区 (1)临界资源 一次只允许一个进程访问的资源 资源状态为临界:0 或 1 (2)临界区 每个进程用于访问临界资源的那段程序 同类临界区:同类资源的临界区 进入区 退出区 临界区 同步四原则 3.1.3同步机制应遵循的原则 同步原则 进程同步应遵循的原则 空闲让进 当资源空闲时,应当允许访问资源的进程进入临界区 忙则等待 当资源被占用时,应使申请访问该资源的进程等待,等待使用者归还资源 同步原则 进程同步应遵循的原则 让权等待 在进程等待资源时,从执行态转为阻塞态,应当让出CPU的使用权。系统将把CPU分配给其它进程使用,以提高系统效率 有限等待 系统应保证等待的进程能在有限的时间内获得资源,继续执行,以防止无限等待浪费该进程已占用的资源 锁机制 3.1.4 临界资源锁机制 例:商场的试衣间 是互斥资源 是临界资源 是共享资源 每个顾客必须遵循以下过程使用试衣间: 锁机制 临界资源锁机制 锁机制实现 一种简单的锁操作实现 锁机制实现 锁操作模型 锁操作的一般模型 出了问题的锁 锁机制实现 关锁操作不可被打断 用原语实现关锁操作 关锁操作在一个指令周期内完成 (1)引入TS的操作 (2)采用“exchange”(swap)指令 利用特殊硬件机制和指令,使关锁操作在一个指令周期内完成 (3)与中断控制相结合实现锁操作 在执行原语过程中关闭中断 TS锁 TS寄存器,各进程一个 锁与中断 通过开、关中断,保证关锁操作不被打断 锁操作特点 锁操作的特点: 实现了进程互斥访问临界资源。 不遵循让权等待原则。——忙等 信号量机制 3.2 进程同步的信号量机制(semaphore) 经典信号量、记录型信号量、信号量集 3.2.1 信号量机制的基本概念 (1)信号量 信号量是对具体物理资源的抽象 不同类的资源用不同名称的信号量代表 同类资源的个数用 0的信号量值表示 信号量值为 0 或 1 的信号量表示临界资源 经典信号量 (2)经典信号量的P,V操作 资源的申请与释放--原语 信号量机制类型 3.2.2三种信号量机制 (1)经典信号量 (2)记录型信号量 (3)信号量集 (4)一般信号量集机制 记录型信号量 (2)记录型信号量 引入进程阻塞机制 在信号量里增加对阻塞进程的纪录 纪录型信号量的P,V操作 记录型信号量特点 纪录型信号量机制特点: s.value的含义 大于0 等于0 小于0 是否遵循让权等待? 阻塞队列,阻塞机制 记录型信号量特点 纪录型信号量机制特点: 进程对资源访问的过程: 原语保证 p(),v()操作都是原语 保证不出现“锁不住”资源的现象 记录型信号量特点 纪录型信号量机制特点: 主动阻塞与被动唤醒 信号量集 (3)信号量集 引入原因 基本思想 流程 信号量集引入原因 信号量集基本思想 基本思想 将多次对多个信号量的申请改为一次,用一个原子操作完成 进程要么一次获得所有的资源,要么一个也申请不到 不会存在互相等待的局面 信号量集流程 信号量集流程 信号量集流程 信号量集流程 信号量集流程 一般信号量集 (4)一般信号量集 引入原因 更灵活 基本思想 si:各信号量 ti:申请下限 ti 0时,可进行资源预留 di:申请个数 一次可申请一种资源的多个 资源竞争 3.3经典进程同步问题 资源竞争时的进程同步 对竞争资源的互斥访问 相互合作 相互合作时的进程同步 保证进程间的前驱、后继关系 公用与私用信号量 经典进程同步问题 经典进程同步问题 生产者——消费者问题 读者——写者问题 哲学家进餐问题 生产者消费者问题 3.3.1生产者——消费者问题 问题描述: 有多个生产者在生产消息 有多个消费者在消费消息 消费者消费的是生产者生产的消息 生产者消费者问题 消息缓冲池 生产者产生的消息放入缓冲池内; 消费者从缓冲池内取走消息消费; 消费者消费后的空白消息块放进空白缓冲池内供生产者使用。 生产者消费者算法分析 算法分析 两类进程:生产者进程和消费者进程 (1)进程间的关系 生产者生产消息后消费者消费 消费者消费后的空白缓冲块由生产者生产消息

文档评论(0)

180****9566 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档