进程的描述与控制.ppt
《进程的描述与控制.ppt》由会员分享,可在线阅读,更多相关《进程的描述与控制.ppt(73页珍藏版)》请在三一办公上搜索。
1、1,第二章 进程的描述与控制,2.1 前趋图和程序执行2.2 进程的描述2.3 进程控制2.4 线程的基本概念,2,2.1 前趋图和程序执行,一、前趋图的定义二、程序的顺序执行三、程序的并发执行四、程序并发执行的条件,3,一、前趋图的定义,前趋图(Precedence Graph)是一个有向无循环图,记为DAG(Directed Acyclic Graph),用于描述进程之间执行的前后关系。图中的每个结点可用于描述一个程序段或进程,乃至一条语句;结点间的有向边则用于表示两个结点之间存在的偏序(Partial Order)或前趋关系(Precedence Relation)“”。=(Pi,Pj)
2、|Pi must complete before Pj may start,如果(Pi,Pj),可写成PiPj,称Pi是Pj的直接前趋,而称Pj是Pi的直接后继。在前趋图中,把没有前趋的结点称为初始结点(Initial Node),把没有后继的结点称为终止结点(Final Node)。每个结点还具有一个重量(Weight),用于表示该结点所含有的程序量或结点的执行时间。如:IiCiPi和S1S2S3,4,DAG定义续,对于上图(a)所示的前趋图,存在下述前趋关系:P1P2,P1P3,P1P4,P2P5,P3P5,P4P6,P4P7,P5P8,P6P8,P7P9,P8P9或表示为:=P1,P2,
3、P3,P4,P5,P6,P7,P8,P9=(P1,P2),(P1,P3),(P1,P4),(P2,P5),(P3,P5),(P4,P6),(P4,P7),(P5,P8),(P6,P8),(P7,P9),(P8,P9)应当注意,前趋图中必须不存在循环,但在上图(b)中却有着下述的前趋关系:S2S3,S3S2,5,二、程序的顺序执行,1、程序的顺序执行2、程序顺序执行时的特征,6,1、程序的顺序执行,仅当前一操作(程序段)执行完后,才能执行后继操作。例如,在进行计算时,总须先输入用户的程序和数据,然后进行计算,最后才能打印计算结果。再如:S1:a:=x+y;S2:b:=a-5;S3:c:=b+1;
4、,7,2、程序顺序执行时的特征,顺序性;封闭性;可再现性。,8,三、程序的并发执行,1、程序的并发执行2、程序并发执行时的特征,9,1、程序的并发执行,在上图(a)例中存在下述前趋关系:IiCi,IiIi+1,CiPi,CiCi+1,PiPi+1而Ii+1和Ci及Pi-1是重迭的,亦即在Pi-1和Ci以及Ii+1之间,可以并发执行。对于具有下述四条语句的程序段,可用上图(b)表示。S1:a:=x+2S2:b:=y+4S3:c:=a+bS4:d:=c+b,10,2、程序并发执行时的特征,1)间断性2)失去封闭性3)不可再现性例如,有两个循环程序A和B,它们共享一个变量N。程序A每执行一次时,都要
5、做N=N+1操作;程序B每执行一次时,都要执行Print(N)操作,然后再将N置成“0”。程序A和B以不同的速度运行。N:=N+1在Print(N)和N:=0之前,此时N的值分别为n+1,n+1,0。N:=N+1在Print(N)和N:=0之后,此时得到的N值分别为n,0,1。N:=N+1在Print(N)和N:=0之间,此时的N值分别为n,n+1,0。,11,四、程序并发执行的条件,1、读、写集的概念2、Bernstein条件3、程序并发执行的判定,12,1、读、写集的概念,读集R(pi)=a1,a2,am表示程序pi在执行期间所要参考的所需参考的所有变量的集合。写集W(pi)=b1,b2,
6、bn表示程序pi在执行期间要改变的所有变量的集合。如c:=a-b和w:=c+1两条语句,其读、写集分别为:R(c:=a-b)=a,bW(c:=a-b)=cR(w:=c-1)=cW(w:=c-1)=w,13,2、Bernstein条件,1966年Bernstein首先提出了p1、p2并发执行的条件,又称为Bernstein条件。若两个程序p1、p2能满足下述条件,他们便能并发执行,且具有可再现性。R(p1)W(p2)R(p2)W(p1)W(p1)W(p2)=,14,3、程序并发执行的判定,例如,有四条语句:S1:a:=x+yS2:b:=z+1S3:c:=a-bS4:w:=c+1利用Bernste
7、in条件判定R(S1)=x,yR(S2)=zR(S3)=a,bR(S4)=cW(S1)=aW(S2)=bW(S3)=cW(S4)=w容易判定S1与S2可并发执行,而S1与S3、S2与S3、S3与S4不能并发执行。考虑S1与S4能不能并发执行?利用前趋图判定无前趋后继关系的两个节点可并发执行,如上图所示。,15,2.2 进程的描述,一、进程的定义与特征二、进程的基本状态三、进程的挂起状态四、进程控制块PCB,16,一、进程的定义与特征,1、进程的定义2、进程的特征,17,1、进程的定义,较典型的进程定义有:进程是程序的一次执行。进程是可以和别的计算并发执行的计算。进程可定义为一个数据结构及能在其
8、上进行操作的一个程序。进程是一个程序及其数据在处理机上顺序执行时所发生的活动。进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。在引入了进程实体的概念后,我们可以把传统OS中的进程理解为:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。定义:可并发执行的程序在一个数据集合上的运行过程,或者说进程是进程实体的运行过程。,18,2、进程的特征,1)动态性2)并发性3)独立性4)异步性5)结构特征,19,二、进程的基本状态,1、进程的三种基本状态2、新状态和终止状态3、进程状态的转换,20,1、进程的三种基本状态,1)就绪(Ready)状态2)执行状态
9、3)阻塞状态,21,2、新状态和终止状态,1)新(New)状态2)终止(Terminated)状态3)引入新状态和终止状态的原因,22,3、进程状态的转换,1)新就绪状态2)就绪执行状态3)执行阻塞状态4)执行就绪状态5)执行终止状态6)阻塞就绪状态,23,三、进程的挂起状态,1、引入挂起状态的原因2、进程状态的转换,24,1、引入挂起状态的原因,1)终端用户的请求。2)父进程请求。3)操作系统的需要。4)对换的需要。5)负荷调节的需要。,25,2、进程状态的转换,1)活动就绪静止就绪。2)活动阻塞静止阻塞。3)静止就绪活动就绪。4)静止阻塞活动阻塞。5)执行静止就绪。6)静止阻塞静止就绪。,
10、26,四、进程控制块PCB,1、进程控制块的作用2、进程控制块中的信息3、进程控制块的组织方式,27,1、进程控制块的作用,进程控制块的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。或者说,OS是根据PCB来对并发执行的进程进行控制和管理的。进程控制块的作用:记录进程信息进程存在的唯一标志操作系统调度进程的数据结构,28,2、进程控制块中的信息,1)进程标识符2)处理机状态3)进程调度信息4)进程控制信息,29,1)进程标识符,进程标识符用于惟一地标识一个进程。一个进程通常有两种标识符:内部标识符。在所有的操作系统中,都
11、为每一个进程赋予一个惟一的数字标识符,它通常是一个进程的序号。设置内部标识符主要是为了方便系统使用。外部标识符。它由创建者提供,通常是由字母、数字组成,往往是由用户(进程)在访问该进程时使用。为了描述进程的家族关系,还应设置父进程标识及子进程标识。此外,还可设置用户标识,以指示拥有该进程的用户。,30,2)处理机状态,处理机状态信息主要是由处理机的各种寄存器中的内容组成的:通用寄存器,又称为用户可视寄存器,它们是用户程序可以访问的,用于暂存信息,在大多数处理机中,有 832 个通用寄存器,在RISC结构的计算机中可超过 100 个;指令计数器,其中存放了要访问的下一条指令的地址;程序状态字PS
12、W,其中含有状态信息,如条件码、执行方式、中断屏蔽标志等;用户栈指针,指每个用户进程都有一个或若干个与之相关的系统栈,用于存放过程和系统调用参数及调用地址。栈指针指向该栈的栈顶。,31,3)进程调度信息,在PCB中还存放一些与进程调度和进程对换有关的信息,包括:进程状态,指明进程的当前状态,作为进程调度和对换时的依据;进程优先级,用于描述进程使用处理机的优先级别的一个整数,优先级高的进程应优先获得处理机;进程调度所需的其它信息,它们与所采用的进程调度算法有关,比如,进程已等待CPU的时间总和、进程已执行的时间总和等;事件,是指进程由执行状态转变为阻塞状态所等待发生的事件,即阻塞原因。,32,4
13、)进程控制信息,进程控制信息包括:程序和数据的地址,是指进程的程序和数据所在的内存或外存地(首)址,以便再调度到该进程执行时,能从PCB中找到其程序和数据;进程同步和通信机制,指实现进程同步和进程通信时必需的机制,如消息队列指针、信号量等,它们可能全部或部分地放在PCB中;资源清单,是一张列出了除CPU以外的、进程所需的全部资源及已经分配到该进程的资源的清单;链接指针,它给出了本进程(PCB)所在队列中的下一个进程的PCB的首地址。,33,3、进程控制块的组织方式,1)链接方式2)索引方式,34,2.3 进程控制,一、操作系统内核二、进程的创建三、进程的终止四、进程的阻塞与唤醒五、进程的挂起与
14、激活,35,处理机的执行状态,为防止操作系统及关键数据如PCB等受到用户程序有意或无意的破坏,通常将处理机的执行状态划分成系统态和用户态:系统态:又称核心态,具有较高的特权,能执行一切指令,可以访问所有寄存器和存储器。用户态:具有较低的执行权限,只能执行规定的指令,访问指定的寄存器和存储器。通常用户程序运行于用户态,OS内核运行于系统态。,36,一、操作系统内核,内核是计算机硬件的第一层扩充软件,为系统对进程控制、存储器管理等提供了有效的机制。内核常驻内存,紧靠硬件,运行效率较高。在不同操作系统中,内核所包含的功能不尽相同,但一般应包含下述功能:1、支撑功能2、资源管理功能,37,1、支撑功能
15、,1)中断处理2)时钟管理3)原语操作原语是由若干条指令构成、用于完成一定功能的过程。与一般过程的区别在于原语是一种“原子操作(Atomic Operation)”。原子操作:一个操作中的所有动作,要么全做,要么全不做。即原子操作是一个不可分割的操作。,38,2、资源管理功能,1)进程管理2)存储器管理3)设备管理,39,二、进程的创建,1、进程图2、进程创建(Creation of Progress)过程3、引起创建进程的事件,40,1、进程图,进程图是用于描述进程家族关系的有向树。图中的节点代表进程。进程pi创建了进程pj后就成pi是pj的父进程(Parent Process),pj是pi
16、的子进程(Progeny Process)。用pi指向pj的有向边描述它们之间的父子关系。创建父进程的进程称为祖父进程,从而一个进程家族就形成了一棵进程树,其中根节点成为进程家族的祖先(Ancestor)。进程间的这种关系是非常有用处的:子进程继承父进程的资源。子进程被撤消时,要归还从父进程获得的资源。撤消一个进程时,必须同时/事先撤消其多有子孙进程。,41,2、进程创建过程,1)申请空白PCB。2)为新进程分配资源。3)初始化进程控制块。初始化标志符信息初始化处理机状态信息初始化处理机控制信息4)将新进程插入就绪队列如果进程就绪队列能够接纳新进程,便将新进程插入就绪队列。,42,3、引起创建
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 进程 描述 控制

链接地址:https://www.31ppt.com/p-5320205.html