《计算机操作系统》课件第3章 (2).ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《计算机操作系统》课件第3章 (2).ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机操作系统 计算机操作系统课件第3章 2 计算机 操作系统 课件
- 资源描述:
-
1、第 3 章进程的描述与控制3.1 进程的引入3.2 进程的描述3.3 进程控制3.4 进程控制的实现举例习题第 3 章进程的描述与控制3.1.1 程序的顺序执行程序的顺序执行1程序顺序执行程序顺序执行一个程序通常由若干个程序段组成,它们必须按照某种先后次序来执行,仅当前一操作执行完后,才能执行后续操作,这类执行过程就是程序的顺序执行。例如,在处理一个作业时,总是先输入用户的程序和数据,然后进行计算,最后将所得的结果打印出来。若用结点代表各个程序段的操作,其中I代表输入操作,C代表计算操作,P代表打印操作,则上述程序段的执行过程如图3-1所示。对一个作业的输入、计算和打印三个操作,必须顺序执行。
2、3.1 进进程程的的引引入入第 3 章进程的描述与控制图3-1 程序的顺序执行第 3 章进程的描述与控制2.程序顺序执行的特征程序顺序执行的特征1)顺序性当顺序程序在处理机上执行时,处理机的操作是严格按照程序所规定的顺序执行的,即只有前一操作结束后,才能执行后续操作。2)封闭性程序是在封闭的环境下运行的。即程序在运行时,它独占全机资源,因而机内各资源的状态只有本程序才能改变。程序一旦开始运行,其执行结果不受外界因素的影响。3)可再现性只要程序执行时的环境和初始条件相同,当程序多次重复执行时,不论它是从头到尾不停顿地执行,还是“停停走走”地执行,都将获得相同的结果。第 3 章进程的描述与控制3.
3、1.2 程序的并发执行程序的并发执行 1.程序并发执行程序并发执行如图3-1所示的输入操作、计算操作和打印操作是一个作业的三个处理过程,逻辑上要求顺序执行。但实际上,实现上述三个步骤的输入机、中央处理机和打印机这三个物理部件是可以同时操作的。由于作业本身的特点,这三个作业步骤只能顺序执行。当有一批作业进行处理时,情况就不同了。输入了作业1的程序和数据后,在对该作业进行计算的同时,可输入作业2的程序和数据,即作业1的计算操作和作业2的输入操作同时进行。如图3-2所示,说明了系统对一批作业进行处理时,各程序段执行的先后顺序。第 3 章进程的描述与控制图3-2 程序的并发执行第 3 章进程的描述与控
4、制从图3-2中可以看出,有的程序执行是有先后顺序的,如:I1先于I2和C1,C1先于P1和C2等。有的程序段可以并发执行,如:I2和C1,C2和P1。所以,对于并发执行的程序来说,它有时处于执行状态,但由于并发程序之间的相互制约关系,有时因需要的某种资源得不到满足,处于暂停状态。因此,并发程序执行时就是像这样停停走走向前推进的。为了能正确反映程序执行时的活动规律和状态变化,要引入一个新的概念进程,以便从变化的角度动态地描述程序的执行。第 3 章进程的描述与控制2程序并发执行时的特征程序并发执行时的特征1)间断性程序在并发执行时,由于它们共享资源或为完成同一项任务而相互合作,致使在并发程序之间形
5、成了相互制约的关系。例如,图3-2所示的I、C和P是三个相互合作的程序,当计算程序完成Ci-1的计算后,如果输入程序I但计算程序尚未完成Ii的处理,则计算程序就无法进行Ci的处理,致使计算程序暂停运行。又如,打印程序完成了Pi的打印后,若计算程序尚未完成对Ci-1的计算,则打印程序就无法对Ci-1的处理结果进行打印。一旦使某程序暂停的因素消失,计算程序便可恢复执行对Ci进行处理。简言之,相互制约将导致并发程序具有“执行暂停执行执行”这种间断性的活动规律。第 3 章进程的描述与控制2)失去封闭性程序在并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态将由多个程序来改变,致使程序的运行
6、已失去了封闭性。这样,某程序在执行时,必然会受到其他程序的影响。例如,当处理机资源被其他程序占有时,某程序必须等待。3)不可再现性程序在并发执行时,由于失去了封闭性,也将导致失去其可再现性。现以两个并发的循环程序共用一个公共变量N来说明这个问题。设程序A每执行一次都要做N=N+1操作,程序B每隔一定时间打印出N值,并将它重新置为0,变量N的初值为N0。这两个程序如图3-3所示。第 3 章进程的描述与控制图3-3 两个程序并发执行实例第 3 章进程的描述与控制由于程序A和程序B的执行都以各自独立的速度向前推进,故程序A与程序B之间对变量N的操作会有如下三种可能:(1)程序A的N=N+1操作,在程
7、序B的PRINT(N)和N=0操作之前,如图3-4所示。这种情况下打印机打印出来的N值为“N0+1”。(2)程序A的N=N+1操作,在程序B的PRINT(N)和N=0操作之间,如图3-5所示。这种情况下打印机打印出来的N值为“N0”。(3)程序A的N=N+1操作,在程序B的PRINT(N)和N=0操作之后,如图3-6所示。第 3 章进程的描述与控制图3-4 第一种执行情况第 3 章进程的描述与控制第 3 章进程的描述与控制图3-6 第三种执行情况第 3 章进程的描述与控制这种情况下打印机打印出来的N值为“N0”。之所以出现上述错误,是因为它们公用了一个公共变量N,而又没有采取恰当的措施。这个例
8、子说明并发程序的执行结果与执行速度有关,也就是说,并发程序已丧失了顺序程序所具有的封闭性和可再现性的特征。第 3 章进程的描述与控制3.2.1 进程的定义进程的定义进程的概念是在20世纪60年代初期,首先由美国麻省理工学院的MULTICS和IBM公司的CTSS/360系统引入的,其后又有许多人从不同的角度给进程下过各种定义。其中较能反映进程实质的定义有:(1)进程是程序的一次执行。(2)进程可定义为一个数据结构及能在其上进行操作的一个程序。3.2 进进程程的的描描述述第 3 章进程的描述与控制(3)进程是一个程序与其数据一起通过处理机的执行所发生的活动。(4)进程是程序在一个数据集合上的运行过
9、程,是系统进行资源分配和调度的一个独立单位。据此,可以把进程定义为:可并发执行的程序在处理机上的执行过程。显然,进程和程序是两个截然不同的概念。程序是指令的有序集合,本身没有任何运行的含义。而进程是程序在处理机上的一次执行过程,是一个动态的概念,进程是有生命期的,能够动态地产生和消亡。其动态性还表现为:“进程由创建而产生,由调度而执行,因得不到资源而暂停,由撤销而消亡”。第 3 章进程的描述与控制程序和进程是既有区别又有联系的两个概念,它们的区别如下:(1)程序是一个静态的概念,而进程是一个动态的概念。(2)程序的存在是永久的,而进程是有生命期的。(3)进程是一个能独立运行的基本单位,是系统资
10、源分配和调度的基本单位。(4)进程与程序之间不是一一对应的,即同一程序同时运行于若干不同的数据集合上,属于若干个不同的进程。第 3 章进程的描述与控制3.2.2 进程的基本状态进程的基本状态前面已经介绍过,进程并不是一口气运行到底的,它与并发执行的其他进程的执行是相互制约的。进程有时处于运行状态,有时又由于某种原因而暂停,等到使它暂停的原因消失后,它又准备运行了,所以进程在运行中不断地改变其运行状态。一个进程在活动期间至少具备以下三种状态:第 3 章进程的描述与控制就绪状态:当进程已经获得除处理机以外的所有资源后,一旦获得CPU,就可以立即运行,这时的进程状态称为就绪状态。在一个系统中,可以有
11、多个进程同时处于就绪状态,通常把这些进程排成一个或多个队列,称为就绪队列。运行状态:进程已获得处理机,它的程序正在执行,这时的进程状态称为运行状态。在单处理机系统中,只能有一个进程处于运行状态。只有在多处理机系统,才存在运行队列。第 3 章进程的描述与控制等待状态:进程因发生某事件(如请求I/O等)而暂时停止运行,即使给它CPU也无法运行,这时的进程状态称为等待状态,也称为阻塞状态。把处于等待状态的进程排成一个队列,称为等待队列。有时也按阻塞的原因不同排成多个队列。进程并非固定地处于某个状态,它将随着程序的执行和外界条件的变化而发生变化,可以用进程状态变迁图(如图3-7所示)来说明系统中进程的
12、状态和这些状态之间变迁的原因。在图3-7中,以结点表示进程的状态,以箭头表示状态的变化。第 3 章进程的描述与控制图3-7 进程状态变迁图第 3 章进程的描述与控制从图3-7中可以看出,处于就绪状态的进程,当进程调度程序为它分配了处理机后,该进程由就绪状态变为运行状态;正在运行的进程因发生某事件而无法执行,则进程将由运行状态变为阻塞状态;处于阻塞状态的进程,若其等待的事件已经发生,则由阻塞状态变为就绪状态;正在执行的进程,如因时间片用完而被暂停执行,该进程由执行状态转为就绪状态。第 3 章进程的描述与控制3.2.3 进程的描述进程的描述当程序并发执行时,由于并发程序之间的相互制约关系,造成程序
13、在执行过程中受阻而暂停,如果系统无法保留该程序的现场,也就意味着无法恢复该程序的现场以继续执行。为了使程序在多道程序设计环境下能并发执行,并能对并发执行的程序加以控制和描述,专门配置了称为“进程控制块”的数据结构。第 3 章进程的描述与控制1.进程控制块进程控制块为了描述和控制进程的运行,系统为每个进程定义了一个数据结构进程控制块(PCB,Process Control Block)。所谓系统创建一个进程,就是由系统为某个程序设置一个PCB,用于对该进程进行控制和管理。进程执行完成时,由系统收回其PCB,该进程便消亡了。对于不同的操作系统来说,进程PCB所包含的内容会有些不同,但通常会包括表3
展开阅读全文