汤小丹操作系统第二章

汤小丹操作系统第二章

ID:46829868

大小:1.07 MB

页数:232页

时间:2019-11-28

汤小丹操作系统第二章_第1页
汤小丹操作系统第二章_第2页
汤小丹操作系统第二章_第3页
汤小丹操作系统第二章_第4页
汤小丹操作系统第二章_第5页
资源描述:

《汤小丹操作系统第二章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第二章 进程管理2.1进程的基本概念2.2进程控制2.3进程同步2.4经典进程的同步问题2.5进程通信2.6线程2.1进程的基本概念2.1.1 程序的顺序执行及其特征1.程序的顺序执行通常可以把一个应用程序分成若干个程序段,在各程序段之间,必须按照某种先后次序顺序执行,仅当前一操作(程序段)执行完后,才能执行后继操作。例如,在进行计算时,总须先输入用户的程序和数据,然后进行计算,最后才能打印计算结果。这里,我们用结点(Node)代表各程序段的操作(在图2-1中用圆圈表示),其中,I代表输入操作,C代表

2、计算操作,P为打印操作;另外,用箭头指示操作的先后次序。这样,上述的三个程序段的执行顺序可示于图2-1(a)中。对一个程序段中的多条语句来说,也有一个执行顺序问题,例如对于下述三条语句的程序段:S1:a:=x+y;S2:b:=a-5;S3:c:=b+1;其中,语句S2必须在语句S1之后(即a被赋值)才能执行;同样,语句S3也只能在b被赋值后才能执行。因此,这三条语句应按图2-1(b)所示的顺序执行。图2-1程序的顺序执行2.程序顺序执行时的特征(1)顺序性:处理机的操作严格按照程序所规定的顺序执行,即

3、每一操作必须在上一个操作结束之后开始。(2)封闭性:程序是在封闭的环境下执行的,即程序运行时独占全机资源,资源的状态(除初始状态外)只有本程序才能改变它。程序一旦开始执行,其执行结果不受外界因素影响。(3)可再现性:只要程序执行时的环境和初始条件相同,当程序重复执行时,不论它是从头到尾不停顿地执行,还是“停停走走”地执行,都将获得相同的结果。程序顺序执行时的特性,为程序员检测和校正程序的错误带来了很大的方便。2.1.2 前趋图前趋图(PrecedenceGraph)是一个有向无循环图,记为DAG(Di

4、rectedAcyclicGraph),用于描述进程之间执行的前后关系。图中的每个结点可用于描述一个程序段或进程,乃至一条语句;结点间的有向边则用于表示两个结点之间存在的偏序(PartialOrder,亦称偏序关系)或前趋关系(PrecedenceRelation)“→”。→={(Pi,Pj)

5、PimustcompletebeforePjmaystart},如果(Pi,Pj)∈→,可写成Pi→Pj,称Pi是Pj的直接前趋,而称Pj是Pi的直接后继。在前趋图中,把没有前趋的结点称为初始结点(Initia

6、lNode),把没有后继的结点称为终止结点(FinalNode)。此外,每个结点还具有一个重量(Weight),用于表示该结点所含有的程序量或结点的执行时间。在图2-1(a)和2-1(b)中分别存在着这样的前趋关系:Ii→Ci→PiS1→S2→S3和对于图2-2(a)所示的前趋图,存在下述前趋关系:P1→P2,P1→P3,P1→P4,P2→P5,P3→P5,P4→P6,P4→P7,P5→P8,P6→P8,P7→P9,P8→P9或表示为:P={P1,P2,P3,P4,P5,P6,P7,P8,P9}→={

7、(P1,P2),(P1,P3),(P1,P4),(P2,P5),(P3,P5),(P4,P6),(P4,P7),(P5,P8),(P6,P8),(P7,P9),(P8,P9)}应当注意,前趋图中必须不存在循环,但在图2-2(b)中却有着下述的前趋关系:S2→S3,S3→S2图2-2前趋图2.1.3 程序的并发执行及其特征1.程序的并发执行在图2-1中的输入程序、计算程序和打印程序三者之间,存在着Ii→Ci→Pi这样的前趋关系,以至对一个作业的输入、计算和打印三个操作,必须顺序执行,但并不存在Pi→Ii

8、+1的关系,因而在对一批程序进行处理时,可使它们并发执行。例如,输入程序在输入第一个程序后,在计算程序对该程序进行计算的同时,可由输入程序再输入第二个程序,从而使第一个程序的计算操作可与第二个程序的输入操作并发执行。一般来说,输入程序在输入第i+1个程序时,计算程序可能正在对第i个程序进行计算,而打印程序正在打印第i-1个程序的计算结果。图2-3示出了输入、计算和打印这三个程序对一批作业进行处理的情况。图2-3并发执行时的前趋图在该例中存在下述前趋关系:Ii→Ci,Ii→Ii+1,Ci→Pi,Ci→C

9、i+1,Pi→Pi+1而Ii+1和Ci及Pi-1是重迭的,亦即在Pi-1和Ci以及Ii+1之间,可以并发执行。对于具有下述四条语句的程序段:S1:a:=x+2S2:b:=y+4S3:c:=a+bS4:d:=c+b图2-4四条语句的前趋关系2.程序并发执行时的特征1)间断性程序在并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使在这些并发执行的程序之间,形成了相互制约的关系。例如,图2-3中的I、C和P是三个相互合作的程序,当计算程序完

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

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

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