操作系统教程 教学课件 作者 黄刚 徐小龙 段卫华 操作系统课件(第四章).pptVIP

操作系统教程 教学课件 作者 黄刚 徐小龙 段卫华 操作系统课件(第四章).ppt

  1. 1、本文档共146页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统 Operating Systems 操作系统课程组 南京邮电大学 第三章 并发进程 4.1 并发进程 4.1.1 顺序程序与并发进程 4.1.2 与时间有关的错误 4.1.3 进程间的联系 4.1.1 顺序程序与并发进程 1、顺序程序 4.1.1 顺序程序与并发进程 1、顺序程序的特征: 顺序性执行 封闭性,独占资源 确定性,即可再现性 4.1.1 顺序程序与并发进程 2、并发进程 4.1.1 顺序程序与并发进程 2、并发进程的特征: 间断性执行,执行--停--执行 资源共享,多个进程共享使用系统资源 不可再现性,执行结果不确定 独立性和制约性 程序和进程不再一一对应 4.1 并发进程 4.1.1 顺序程序与并发进程 4.1.2 与时间有关的错误 4.1.3 进程间的联系 4.1.2 与时间有关的错误 1、并发进程交替使用共享资源时可能出现的错误: 例如:P1和P2是两个并发进程 P1: ①R1=C; ②R1=R1+1; ③C=R1; P2: ④R2=C; ⑤R2=R2+1; ⑥C=R2; P1全部执行完毕后再执行P2,则C增加2 若P2中的④在P1中的③之前执行,则C增加1 原因是没有正确地控制对共享变量C的访问 4.1.2 与时间有关的错误 2、飞机订票问题: P1和P2是两个并发的终端订票进程,x=10 P1: ① Read(x); ②if x=1 then x:=x-1; ③ write(x); P2: ④ Read(x); ⑤if x=1 then x:=x-1; ⑥ write(x); P1全部执行完毕后再执行P2,则x=8 若P2中的④在P1中的③之前执行,则x=9 出现了1张票卖给2个客户的情况,原因是没有正确地控制对共享变量x的访问 4.1.2 与时间有关的错误 3、缓冲区读写问题:get、copy、put是3个并发进程 4.1 并发进程 4.1.1 顺序程序与并发进程 4.1.2 与时间有关的错误 4.1.3 进程间的联系 4.1.3 进程间的联系 1、间接式与直接式制约: 直接式制约:一程序段等待另一程序段的执行结果 间接式制约:并发程序段竞争同一资源 2、相交进程与无关进程: 相交进程:并发进程在逻辑上有某种联系 无关进程:逻辑上无任何联系的并发进程 直接作用只发生在相交进程之间;间接作用可以发生在相交进程之间,也可发生在无关进程之间 4.1.3 进程间的联系 3、进程的同步与互斥: 进程同步(直接作用):根据一定的时序关系合作完成一项任务 并发进程因直接制约而互相等待,彼此相互发送消息进行合作,使得各进程按一定的速度执行 进程互斥(间接作用):各进程竞争使用临界资源 临界资源:一次只允许一个进程使用的系统资源 进程互斥是进程同步的一种特殊情况 第三章 并发进程 4.2 临界区管理 4.2.1 临界区及其使用原则 4.2.2 实现临界区管理的软件方法 4.2.3 实现临界区管理的硬件方法 4.2.1 临界区及其使用原则 临界区:进程中涉及临近资源的程序段为临界区/互斥区,多个进程的临界区为相关临界区 临界区的使用原则: 有空让进 无空等待 多中择一 有限等待 让权等待 解决进程互斥的两种做法: 由竞争各方平等协商解决,包括硬件、软件两类方法。 引入进程管理者来协调竞争各方对互斥资源的使用 4.2 临界区管理 4.2.1 临界区及其使用原则 4.2.2 实现临界区管理的软件方法 4.2.3 实现临界区管理的硬件方法 4.2.2 实现临界区管理的软件方法 1、两个失败的尝试 (1) 4.2.2 实现临界区管理的软件方法 1、两个失败的尝试 (2) 4.2.2 实现临界区管理的软件方法 2、成功解决方法(Dekker算法) 4.2 临界区管理 4.2.1 临界区及其使用原则 4.2.2 实现临界区管理的软件方法 4.2.3 实现临界区管理的硬件方法 4.2.3 实现临界区管理的硬件方法 通过专门提供的硬件指令管理临界区 1、测试并建立指令TS s代表临界资源状态,由TS指令控制 s : boolean; s := true; process Pi /* i = 1,2,…,n */ pi : boolean; begin repeat pi := TS(s) until pi; 临界区; s := true; end; 4.2.3 实现临界区管理的硬件方法 2、交换指令SWAP 交换指令将交换两个字的内容。公共变量lock表临界区是否上锁,每个进程的私有变量key用于与lock

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档