网站大量收购闲置独家精品文档,联系QQ:2885784924

操作系统教程ch3-3.1并发进程.ppt

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

操作系统教程(第5版)

第3章同步、通信与死锁高等教育出版社2014年1月第三章并发进程3.1并发进程3.2临界区管理3.3信号量与PV操作3.4管程3.5进程通信3.6操作系统并发问题解决方案小结3.7死锁3.8Linux同步和通信机制3.1并发进程3.1.1顺序程序设计3.1.2并发程序设计3.1.3进程的交互:协作和竞争进程的顺序性一个进程在顺序处理器上的执行是严格按序的,一个进程只有当一个操作结束后,才能开始后继操作顺序程序设计是把一个程序设计成一个顺序执行的程序模块,顺序的含义不但指一个程序模块内部,也指两个程序模块之间。顺序程序设计特点程序执行的顺序性程序环境的封闭性执行结果的确定性计算过程的可再现性进程的并发性(1)进程执行的并发性:一组进程的执行在时间上是重叠的。并发性举例:有两个进程A(a1、a2、a3)和B(b1、b2、b3)并发执行,可交替进行。从宏观上看,并发性反映一个时间段中几个进程都在同一处理器上,处于运行还未运行结束状态。从微观上看,任一时刻仅有一个进程在处理器上运行。进程的并发性(2)

程序并发执行小程序1:循环执行,“读入”数据块,将数据送入缓冲区1;小程序2:循环执行,“加工”缓冲区1中的数据,把计算结果送缓冲区2;小程序3:循环执行,“输出”缓冲区2中的计算结果,让数据打印输出。进程的并发性(3)

观察程序并发执行现象(1)小程序操作数据块有先后次序,按数据块序号从小到大处理。(2)小程序可以并发执行的,例如,“输入”i3、“加工”p2与“输出”o1可并行操作。这样CPU、输入设备和输出设备可并行工作。(3)小程序并发执行时,相互之间会产生制约关系,原因是小程序1与2共享资源--缓冲区1,小程序2与3共享资源--缓冲区2,出现了竞争共享资源问题。进程的并发性(4)进程i1p1ipoo1i2p2o2i3p3o3t1t2t3时间并发工作i4t4i5P4进程的并发性(4)并发的实质是一个处理器在几个进程之间的多路复用,并发是对有限的物理资源强制行使多用户共享,消除计算机部件之间的互等现象,以提高系统资源利用率。无关的并发进程并发进程分类:无关的,交往的。无关的并发进程:一组并发进程分别在不同的变量集合上操作,一个进程的执行与其他并发进程的进展无关。并发进程的无关性是进程的执行与时间无关的一个充分条件,又称为Bernstein条件。Bernstein条件R(pi)={a1,a2,…an},程序pi在执行期间引用的变量集W(pi)={b1,b2,…bm},程序pi在执行期间改变的变量集若两个程序的变量集交集之和为空集:R(p1)∩W(p2)∪R(p2)∩W(p1)∪W(p1)∩W(p2)={}则并发进程的执行与时间无关。Bernstein条件举例例如,有如下四条语句:S1:a:=x+yS2:b:=z+1S3:c:=a–bS4:w:=c+1于是有:R(S1)={x,y},R(S2)={z},R(S3)={a,b},R(S4)={c};W(S1)={a},W(S2)={b},W(S3)={c},W(S4)={w}。S1和S2可并发执行,满足Bernstein条件。其他语句并发执行可能会产生与时间有关的错误。交往的并发进程交往的并发进程:一组并发进程共享某些变量,一个进程的执行可能影响其他并发进程的结果。并发程序设计的优点?对于单处理器系统,可让处理器和各I/O设备同时工作,发挥硬部件的并行能力。?对于多处理器系统,可让各进程在不同处理器上物理地并行,加快计算速度。?简化程序设计任务。采用并发程序设计的目的充分发挥硬件的并行性,提高系统效率。硬件能并行工作仅有了提高效率的可能性,硬部件并行性的实现需要软件技术去利用和发挥,这种软件技术就是并发程序设计。并发程序设计是多道程序设计的基础,多道程序的实质就是把并发程序设计引入到系统中。与时间有关的错误对于一组交往的并发进程,执行的相对速度无法相互控制,各种与时间有关的错误就可能出现。与时间有关错误的表现形式:结果不唯一永远等待(结果不唯一)飞机票售票问题/*飞机票售票问题*/voidT1(){

您可能关注的文档

文档评论(0)

yzs890305 + 关注
实名认证
内容提供者

计算机二级持证人

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

领域认证该用户于2024年11月02日上传了计算机二级

1亿VIP精品文档

相关文档