孙钟秀操作系统ch并发进程课件

上传人:磨石 文档编号:243152608 上传时间:2024-09-17 格式:PPT 页数:34 大小:2.09MB
返回 下载 相关 举报
孙钟秀操作系统ch并发进程课件_第1页
第1页 / 共34页
孙钟秀操作系统ch并发进程课件_第2页
第2页 / 共34页
孙钟秀操作系统ch并发进程课件_第3页
第3页 / 共34页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,孙钟秀操作系统ch并发进程,*, , ,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,孙钟秀操作系统ch并发进程,*,P,o,w,e,r,B,a,r,中国专业,PPT,设计交流论坛,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,孙钟秀操作系统ch并发进程,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,孙钟秀操作系统ch并发进程,*,操作系统教程,(,第,4,版,),第三章 并发进程,主讲教师:王慧娇,E-mail:,手机,:,QQ: 248886622,答疑时间:周二,14:00-15:30,孙钟秀操作系统ch并发进程,第三章 并发进程,3.1,并发进程,3.2,临界区管理,3.3,信号量与,PV,操作,3.4,管程,3.5,进程通信,3.6,死锁,3.7 Linux,同步机制和通信机制,3.8 Windows 2003,同步机制和通信机制,孙钟秀操作系统ch并发进程,3.1,并发进程,3.1.1,顺序程序设计,3.1.2,进程的并发性,3.1.3,进程的交互(,Interaction Among Processes,):协作和竞争,孙钟秀操作系统ch并发进程,前驱图,(1),前驱图是一个有向无循环图,图中的每个结点可以表示一条语句、一个程序段或一个进程,结点间的有向边表示两个结点之间存在的偏序或前驱关系“”:,(,Pi,Pj,),| Pi,必须在,Pj,开始之前完成,孙钟秀操作系统ch并发进程,前驱图,(2),如果(,Pi,Pj,)(也可以写成,PiPj,),则称为,Pi,是,Pj,的直接前驱,而,Pj,是,Pi,的直接后继。若存在一个序列,PiPjPk,,则称,Pi,是,Pk,的前驱,而,Pk,是,Pi,的后继。在前驱图中,没有前驱的结点称为初始结点,没有后继的结点称为终止结点。,孙钟秀操作系统ch并发进程,前驱图示例,孙钟秀操作系统ch并发进程,3.1.1,顺序程序设计,把一个具有独立功能的程序独占处理机直至最终结束的过程称为程序的顺序执行。,如果完成一个任务需要若干不同的程序,则这些程序在时间上也按调用次序严格有序执行(程序外部的顺序性),顺序程序设计是把一个程序设计成一个顺序执行的程序模块,不同程序也按顺序执行。,孙钟秀操作系统ch并发进程,程序的顺序执行,(,a,),程序的顺序执行,(,b,),三条语句的顺序执行,I,1,C,1,P,1,I,2,C,2,P,2,S,1,S,2,S,3,孙钟秀操作系统ch并发进程,程序顺序执行的特点:,程序执行的顺序性,程序环境的封闭性,程序执行结果的确定性,计算过程的可再现性,孙钟秀操作系统ch并发进程,程序顺序执行的例子,while(1) input,,,process,,,output ,78,输入机,处理器,磁带机,130,150,228,280,300,378,430,450,时 间,处理器利用率:,52/(78+52+20)35%,孙钟秀操作系统ch并发进程,3.1.2,进程的并发性,程序的并发执行:若干个程序段同时在系统中运行,这些程序段的执行在时间上是重叠的,一个程序段的执行尚未结束,另一个程序段的执行已经开始,即使这种重叠是很小的一部分,也称这几个程序段是并发执行的。,孙钟秀操作系统ch并发进程,并发性举例,例如:有两个进程,A(a1,、,a2,、,a3),和,B(b1,、,b2,、,b3),执行,顺序执行:,a1,、,a2,、,a3,、,b1,、,b2,、,b3,交替执行:,a1,、,b1,、,a2,、,b2,、,a3,、,b3,从宏观上看,并发性反映一个时间段中几个进程都在同一处理器上,处于运行还未运行结束状态,从微观上看,任一时刻仅有一个进程在处理器上运行。,孙钟秀操作系统ch并发进程,表示并发执行的语句,S,0,;,Cobegin,S,1,;,S,2,;,;,S,n,Coend,S,n+1,孙钟秀操作系统ch并发进程,并发的实质,并发的实质是一个处理器在几个进程之间的多路复用,并发是对有限的物理资源强制行使多用户共享,消除计算机部件之间的互等现象,以提高系统资源利用率。,孙钟秀操作系统ch并发进程,顺序执行,while(1) input,,,process,,,output ,并发执行,while(1) input,,,send ,while(1) receive,,,process,,,send ,while(1) receive,,,output ,图,图,孙钟秀操作系统ch并发进程,78,输入机,处理器,磁带机,130,150,228,306,208,286,384,364,时 间,处理器利用率,:,(,52 * n,),/,(,78*n+52+20,),=,67%,孙钟秀操作系统ch并发进程,并发进程,并发进程分类:无关的,交互的。,无关的并发进程:一组并发进程分别在不同的变量集合上操作,一个进程的执行与其他并发进程的进展无关。,交互的并发进程,共享某些变量,一个进程的执行可能影响其他进程的执行结果,并发的进程之间具有制约关系。,孙钟秀操作系统ch并发进程,程序并发执行的特点:,间断性,失去封闭性,不可再现性,程序与计算不再一一对应,孙钟秀操作系统ch并发进程,两个并发进程共用了一个公共变量,N,,,N,10,程序,A,.,.,N=N+1;,.,.,程序,B,.,Print(N);,N=0;,.,.,(,1,),Print(N);,N=N+1; N=0;,(,2,),N=N+1; N=0;,Print(N);,(,3,),N=N+1; Print(N);,N=0;,孙钟秀操作系统ch并发进程,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)=,则并发进程的执行与时间无关。,孙钟秀操作系统ch并发进程,Bernstein,条件举例,例如,有如下四条语句:,S1: a := x + y S2: b := z + 1,S3: c := a b S4: 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,条件。其他语句并发执行可能会产生与时间有关的错误。,孙钟秀操作系统ch并发进程,并发程序设计的优点,对于单处理器系统,可让处理器和各,I/O,设备同时工作,发挥硬部件的并行能力。,对于多处理器系统,可让各进程在不同处理器上物理地并行,加快计算速度。,简化了程序设计任务。,孙钟秀操作系统ch并发进程,采用并发程序设计的目的,充分发挥硬件的并行性,提高系统效率。硬件能并行工作仅有了提高效率的可能性,硬部件并行性的实现需要软件技术去利用和发挥,这种软件技术就是并发程序设计。,并发程序设计是多道程序设计的基础,多道程序的实质就是把并发程序设计引入到系统中。,孙钟秀操作系统ch并发进程,与时间有关的错误,对于一组交往的并发进程,执行的相对速度无法相互控制,各种与时间有关的错误就可能出现。,与时间有关错误的表现形式:,结果不唯一,永远等待,孙钟秀操作系统ch并发进程,(结果不唯一)购买车票问题,process Ti ( i = 1, 2 ),var Xi:integer;,begin,按旅客定票要求找到,Aj,;,Xi := Aj;,if Xi=1 then begin,Xi:=Xi-1; Aj:=Xi;,输出一张票,;,end,else ,输出票已售完,;,end;,孙钟秀操作系统ch并发进程,设有如下执行顺序:,T1: x1:=Aj x1=m(m0),T2: x2:=Aj x2=m(m0),T2: x2:=x2-1; Aj:=x2 Aj=m-1,T1: x1:=x1-1; Aj:=x1 Aj=m-1,结果:把同一张票买给了两位不同的旅客,(结果不唯一)购买车票问题,孙钟秀操作系统ch并发进程,(永远等待)内存管理问题,procedure borrow (var B:integer),begin,if Bx then,申请进程进入等待队列等主存资源,x:=x-B;,修改主存分配表,申请进程获得主存资源,end;,procedure return (var B:integer),begin,x:=x+B;,修改主存分配表,释放等主存资源的进程,end;,孙钟秀操作系统ch并发进程,(永远等待)内存管理问题,1.process1,调用,borrow,,结果,BX,2.process2,调用,return,,执行到“释放等待主存资源的进程”,没有进程等待,退出,3.process1,执行“进程进入等待主存资源队列”,4.,如果以后没有其他,process,再来归还主存,5.,结果,process1,处于永远等待状态,孙钟秀操作系统ch并发进程,3.1.3,进程的交往:竞争与协作(,1,),系统中的多个进程之间彼此无关,系统中的多个进程之间彼此相关,资源竞争的两个控制问题:,一个是死锁,(Deadlock),问题,,一个是饥饿,(Starvation),问题,既要解决饥饿问题,又要解决死锁问题。,孙钟秀操作系统ch并发进程,进程的交往:竞争与协作,(2),进程互斥,(Mutual Exclusion),进程互斥是指若干个进程因相互争夺独占型资源时所产生的竞争制约关系。,孙钟秀操作系统ch并发进程,进程的交往:竞争与协作,(3),协作关系,(1),某些进程为完成同一任务需要分工协作。,进程同步指为完成共同任务的并发进程基于某个条件来协调它们的活动,因为需要在某些位置上排定执行的先后次序而等待、传递信号或消息所产生的协作制约关系。,孙钟秀操作系统ch并发进程,进程的交往:竞争与协作,(4),协作关系,(2),进程同步指两个以上进程基于某个条件来协调它们的活动。一个进程的执行依赖于协作进程的消息或信号,当一个进程没有得到来自于协作进程的消息或信号时需等待,直到消息或信号到达才被唤醒。,孙钟秀操作系统ch并发进程,进程的交往:竞争与协作,(5),进程互斥关系是一种特殊的进程同步关系,即逐次使用互斥共享资源,是对进程使用资源次序上的一种协调。,孙钟秀操作系统ch并发进程,结论,当程序并发执行时,系统处于一个复杂的动态组合状态,各程序执行的相对速度不定,程序员极不容易看到两个同样的结果,且在众多的结果中应该只有一个是正确的答案,而其他则是错误的。,为了保证得到唯一正确的结果,需要实现并发程序执行时的同步。,孙钟秀操作系统ch并发进程,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!