计算机操作系统(第三版)2进程管理.ppt

计算机操作系统(第三版)2进程管理.ppt

ID:56400476

大小:1.15 MB

页数:148页

时间:2020-06-16

计算机操作系统(第三版)2进程管理.ppt_第1页
计算机操作系统(第三版)2进程管理.ppt_第2页
计算机操作系统(第三版)2进程管理.ppt_第3页
计算机操作系统(第三版)2进程管理.ppt_第4页
计算机操作系统(第三版)2进程管理.ppt_第5页
资源描述:

《计算机操作系统(第三版)2进程管理.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库

1、第二章进程管理2.1进程的基本概念2.2进程控制2.3进程同步2.4经典进程的同步问题2.5管程机制2.6进程通信2.7线程教学目的:掌握进程的概念,进程的控制过程掌握进程的同步与通信掌握进程同步与互斥算法熟悉线程的基本概念和通信机制重点与难点:进程的同步互斥算法与通信2.1进程的基本概念2.1.1前趋图2.1.2程序的顺序执行及其特征2.1.3程序的并发执行及其特征2.1.4进程的特征与状态2.1.5进程控制块2.1.1前趋图(PrecedenceGraph)是一个有向无循环图,记为DAG(DirectedAcyclicGraph),用于描述进程之间执行的前后关系。P

2、1P2P3P4P5P6P7P8P9结点有向边直接前驱直接后继初始结点终止结点重量例:具有九个结点的前趋图PiPj前趋关系:P1→P2,P1→P3,P1→P4,P2→P5,P3→P5,P4→P6,P4→P7,P5→P8,P6→P8,P7→P9,P8→P9S1S2S3前驱图中不能存在循环关系。如:2.1.2程序的顺序执行及其特征程序:源代码程序、目标代码程序、可执行程序程序执行:编辑、编译、链接、执行程序的结构:顺序结构、分支结构、循环结构程序的顺序执行举例:例1:输入I,计算C,打印P例2:S1,S2,S3S1:a:=x+yS2:b:=a-5S3:c:=b+1程序顺序执行

3、的特征:顺序性:处理机的操作严格按照程序结构所指定的次序执行。封闭性:程序一旦开始执行,其计算结果不受外界因素影响。可再现性:只要程序执行时的环境和初始条件相同,每次重复执行都将获得相同的结果。2.1.3程序的并发执行及其特征1.程序的并发执行所谓程序的并发执行是指:若干个程序同时在系统中执行,这些程序的执行在时间上是重叠的,一个程序的执行尚未结束,另一个程序的执行已经开始。一个程序段的多条语句的并发执行:S1:a:=x+2S2:b:=y+5S3:c:=a+bS4:d:=c+6S1S3S4S22、程序并发执行的特征间断性由于资源共享和相互合作,并发执行的程序间形成了相互

4、制约关系,导致程序的运行过程出现“执行—暂停—执行”的现象。失去封闭性程序在并发执行时,是多个程序共享系统中的资源,因此这些资源的状态将由多个程序来改变。不可再现性由失去封闭性导致。同样的初始条件,一个程序的多次重复执行,可得到不同的结果。并发执行示例1(与时间有关的错误)因为这种错误和相对执行速度有关,因此称为与时间有关的错误。…a=nif(a>=1){a=a-1;n=a;}……//n表示剩余的票数//售出一张票…a=nif(a>=1){a=a-1;n=a;}……//n表示剩余的票数//售出一张票并发程序示例2例:程序A、B,共享变量N。代码如下:程序ABEGINRE

5、PEAT……N:=N+1……UNTILFALSEEND程序BBEGINREPEAT……PRINT(N)N:=0…UNTILFALSEEND两个程序以不同速度运行,可能出现三种情况:N:=N+1在Print(N)和N:=0之前——N值分别为N+1,N+1,0N:=N+1在Print(N)和N:=0之后——N值分别为N,0,1N:=N+1在Print(N)和N:=0之间——N值分别为N,N+1,0程序的并发执行使得程序的执行情况不可预见,其结果不再唯一,成为一个动态的过程。而程序是一个静态的概念,不再能切实反映程序执行的各种特征(独立性、并发性、动态性)。所以我们提出了新的

6、概念——进程3、程序并发执行引发的问题:协调各程序的执行顺序:例如:当输入的数据还未全部输入内存时,计算进程必须等待。多个执行程序共享系统资源,程序之间可能会互相影响,甚至影响输出结果。选择哪些、多少个程序进入内存执行?内存中的执行程序谁先执行,谁后执行?内存如何有效分配?4、并发执行的条件:并发执行的条件:达到封闭性和可再现性。并发执行失去封闭性的的原因是共享资源的影响,去掉这种影响就行了。1966年,由Bernstein给出并发执行的条件。将程序中任一语句或程序段Pi划分为两个变量的集合,R(pi)和W(pi)。其中,R(pi)={a1,a2,…an},程序pi在执

7、行期间引用的(读的)变量集,称为“读集”。W(pi)={b1,b2,…bm},程序pi在执行期间改变的(写的)变量集,称为“写集”。Bernstein条件:如果对于语句p1、p2,如果同时满足以下三个条件:R(p1)∩W(p2)={}R(p2)∩W(p1)={}W(p1)∩W(p2)={}则语句p1、p2可以并发执行。例如,有如下四条语句:S1:a:=x+yS2:b:=z+1S3:c:=a–bS4:w:=c+1其中:R(S1)={x,y}W(S1)={a}R(S2)={z}W(S2)={b}R(S3)={a,b}W(S3)={c}R(S4

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。