【计算机】02 进程的描述和控制

上传人:艾力 文档编号:51717687 上传时间:2018-08-16 格式:PPT 页数:90 大小:1.18MB
返回 下载 相关 举报
【计算机】02 进程的描述和控制_第1页
第1页 / 共90页
【计算机】02 进程的描述和控制_第2页
第2页 / 共90页
【计算机】02 进程的描述和控制_第3页
第3页 / 共90页
【计算机】02 进程的描述和控制_第4页
第4页 / 共90页
【计算机】02 进程的描述和控制_第5页
第5页 / 共90页
点击查看更多>>
资源描述

《【计算机】02 进程的描述和控制》由会员分享,可在线阅读,更多相关《【计算机】02 进程的描述和控制(90页珍藏版)》请在金锄头文库上搜索。

1、第二章 进程的描述和控制(Process Description and Control)教学目的: 本课为描述程序并发执行引入进程的概念,描述进程的特征、 状态、状态的转换、进程控制块等基本概念。描述控制进程状 态转换的OS内核和进程控制原语的功能。并发性是OS最重要的 特征,进程是OS最基本最重要的概念,进程管理是OS的重点和 难点。教学要求:z 熟悉进程引入的必要性;熟练掌握进程的定义和特征, 熟练掌握进程的三个基本状态和状态的转换,熟练掌握 进程存在的唯一实体-进程控制块,熟悉进程上下文。 z 熟悉内核的功能,掌握增加“挂起”、 “激活”操作 的五个状态图和状态的转换,熟悉创建、撤消、

2、阻塞、 唤醒、挂起和激活进程控制原语的功能,一般了解线程 的概念。 z 了解模块接口法、层次结构法和客户服务器结构三种 操作系统结构。2.2第一节 进程的引入(1) 程序顺序执行与特征z 一个较大的程序通常都由若干个程序段组成,程序在执行 时,各程序段必须按照先后次序逐个执行。程序各程序段 先后执行次序关系可用前趋图表示。 z 前趋图是一个有向无循环图,图由结点和结点间有向边组 成,结点代表各程序段操作,而结点间的有向边表示两程 序段操作之间存在的前趋关系。两程序段Pi和Pj的前趋关 系表示成Pi-Pj,Pi是Pj的前趋,Pj是Pi的后继。(结合 P35图2-1)P1C1I1 I2C2P22.

3、3进程的引入-1 例:s1: a:=x+ys2: b:=a-5s3: c:=b+1 z 程序顺序执行特征:顺序性:程序各程序段严格按照规定的顺序执行。封闭性:程序运行时机内各资源只受该程序控制而改变,执 行结果不受外界因素影响。 可再现性:只要程序执行环境和初始条件相同,程序多次执 行,可获得相同结果。 (2)程序并发执行与特征并发环境:在计算机系统支持并行操作时,如采用多道程序 设计技术,则内存中多道程序处于并发执行状态。如上述有 三个程序段的作业类,虽然每个作业有前趋关系的各程序段 不能在系统CPU和输入输出各部件并行执行,但一个作业没 有前趋关系的程序段或不同作业的程序段可以分别在CPU

4、和 各输入输出部件上并行执行。2.4进程的引人-2程序并发执行 (定义)若干个程序段同时在系统中运行,这些程序的执行在 时间上是重迭的,一个程序段的执行尚未结束,另一个 程序段的执行已经开始,即使这种重迭是很小的,也称 这几个程序段是并发执行的。2.5进程的引入-3四个上述三个程序段类的作业并发执行的前趋图如下图所示 :C3I1I2I3I4C1C2C4P1P2P3P42.6进程的引入-3z 程序并发执行特征: 间断性:程序在并发执行时,由于它们共享资源或为完成同一 项任务而相互合作,使在并发程序之间形成了相互制约的 关系。相互制约将导致并发程序具有“执行-暂仃-执行” 这种间断性活动规律。 失

5、去封闭性:程序在并发执行时,是多个程序共享系统中的各 种资源,因而这些资源的状态将由多个程序来改变,致使 程序的运行已失去了封闭性。 不可再现性:程序在并发执行时,由于失去了封闭性,也将导 致失去结果的可再现性。即程序经过多次运行,虽然其各 次的环境和初始条件相同,但得到的结果却各不相同。 例:观察者/报告者2.7进程的引入-4观察者: 报告者: begin beginrepeat repeatwait a car go through deley a timeN=N+1; Print N ;N=0 ;until until end end 初始N=n时不同执行序列:N=N+1; Print

6、N; Print N ;Print N ; N=0 ; N=N+1 ;N=0 ; N=N+1 ; N=0 ; 结果各不相同: 打印n+1,N=0; 打印n,N=1; 打印n,N=0;2.8程序(程序段)并发执行的条件 Berstein条件(自学)2.92.2 进程的基本概念2.2.1 进程的定义及特征 1 进程的定义 z 由于程序在并发执行时,各次执行的结果不同,所以用 “程序”这个概念已无法描述程序的并发执行,所以必 须引入新的概念-进程来描述程序的并发执行。进程这一 术语最早由麻省理工学院著名的操作系统MULTICS中提出 。 z 进程定义:“可并发执行的程序在一个数据集合上的运 行过程”

7、。 z 或者“是具有独立功能的程序关于某个数据集合上的一 次运行活动,是系统进行资源分配和调度的独立单位。 (未引入线程前) ”2.102 进程的特征(与程序相比而言):1)动态性 (1)强调:是一个程序的执行过程(2)有一定生命期:创建执行暂停消亡(3)在不同状态之间转换动态性是进程的最基本特征,它是程序执行过程,它是有 一定的生命期。它由创建而产生、由调度而执行,因得不 到资源而暂仃,并由撤消而死亡。而程序是静态的,它是 存放在介质上(外存、软盘、光盘)一组有序指令的集合 ,无运动的含义。一个程序-多个进程。2.11进程的引入-12)并发性:并发性是进程的重要特征,同时也是OS的重要特征。

8、并发性指 多个进程实体同存于内存中,能在一段时间内同时运行。而程序是不能 并发执行。 3)独立性:从定义看 资源分配独立调度 进程是一个能独立运行的基本单位,即是一个独立获得资源和独立调度 的单位;而程序不作为独立单位参加运行,必须通过建立进程才能运行。 4)异步性:进程按各自独立的不可预知的速度向前推进,即进程按异步方 式进行 导致程序执行的不可再现性,因此OS必须采用某种措施来 限制各进程推进序列以保证各程序间正常协调运行。 5)结构特征:由定义,进程实体包括 程序段 数据段进程控制块PCB(PROCESS CONTROL BLOCK)UNIX中称为“进程映象”。 6)进程可以创建其它进程

9、,而程序不能。 (练习)2.122.2.2进程的基本状态及其转换进程有三个基本状态,不同系统设置的进程状态数目不同。 1. 进程的三个基本状态 执行态(Excuting):当一个进程在处理机上运行时,则称该进程处于运行状态。进程占有CPU,并在CPU 上运行(如不特别强调,大都指单CPU)若CPU 空闲,处理机挑选一进程执行。 就绪态(Ready):一个进程获得了除处理机外的一切所需资源 ,一旦得到处理机即可运行,则称此进程处于 就绪状态。当调度给其CPU时,立即可以运行。 阻塞态(Blocked)又称睡眠状态、等待状态、封锁态、冻结态 。一个进程正在等待某一事件发生(例如请求I O或等待IO

10、完成或申请缓冲空间等)而暂时仃 止运行,这时即使把处理机分配给进程也无法运 行,故称该进程处于阻塞状态。(即使CPU空闲, 该进程也不可运行)例:打印机 阻塞队列2.13进程的描述-12 状态转换进程调度时间片已用完等待的事件已发生等待某一事件发生就 绪 态执 行 态阻 塞 态2.14进程状态的转换三个基本状态之间可能转换和转换原因如下: 就绪态执行态:当处理机空闲时,进程调度程序必将 处理机分配给一个处于就绪态的进程 ,该进程便由就绪态 转换为运行态。 执行态阻塞态:处于运行态的进程在运行过程中需要 等待某一事件发生后(例如因IO请求等待IO完成后) ,才能继续运行,则该进程放弃处理机,从运

11、行态转换为 阻塞态。 阻塞态就绪态:处于阻塞态的进程,若其等待的事件 已经发生,于是进程由阻塞态转换为就绪态。 执行态就绪态:处于执行态的进程在其运行过程中, 因分给它的处理机时间片已用完,而不得不让出(被抢占 )处理机,或者有优先级高的进程出现,进程由执行态转 为就绪态。 z 而阻塞态运行态和就绪态阻塞态这二种状态 转换不可能发生。2.153.系统中各进程状态的分布和管理z 处于运行态进程:如系统有一个处理机,则在任何一时 刻,最多只有一个进程处于运行态。 z 处于就绪态进程:一般处于就绪态的进程按照一定的算 法(如先来的进程排在前面,或采用优先权高的进程排 在前面)排成一个就绪队列。 z

12、处于阻塞态进程:处于阻塞态的进程排在阻塞队列中。 由于等待事件原因不同,阻塞队列也按事件分成几个队 列。2.164 新状态和终止状态新状态:进程刚建立,还未将它送入就绪队列时的状态。 终止状态:当进程已结束(正常/异常),OS已将它从就绪 队列中移出,但尚未将它撤消时的状态。进程调度时间片已用完等待的事件已发生就 绪 态执 行 态阻 塞 态等待某一事件发生新状态终止状态接纳完成或发生 错误2.175 挂起状态的引入指人为的把正在执行或没有执行的进程挂起,人为的暂停 。引入挂起的原因:1)在程序执行期间,用户能发现某些可疑问题暂停 以便检查。2)系统在程序执行期间,想了解一下资源使用情况 暂停某

13、些(就绪/执行)进程以便评估。执行暂停就绪暂不接受调度引进一个有别于就绪的 状态静止就绪就绪态执行态静止就绪挂起挂起 激活挂起状态2.183)内存不够时,把某些阻塞的进程调至外存,所以当引起 阻塞的事件完成时,因为它 在外存,要先由外存内 存,再等待调度,有一定时延。该进程也不能立刻进入 就绪,所以有别于阻塞,称为静止阻塞。可以画7种状态的完整转换图。(不同OS所设状态转换 不同)阻塞态静止阻塞挂起 激活静止就绪事件出现2.19五个状态进程状态图静 止 就 绪活 动 就 绪活动 阻塞运 行静止 阻塞阻塞唤醒挂起激活2.206 关于作业z 作业、作业状态及转移 z 在批处理系统中一个用户程序的执

14、行的全过程称为 一个作业,当作业提交给计算中心(或机房)后,由机 房工作人员录入到存储设备上(如磁带、磁盘等),然 后,由作业调度程序按某种调度策略将作业调入计算机 系统执行,执行完成后,由作业调度程序做作业的善后处理工作,至此一个作业完成。2.21作业、作业状态及转移z 我们把上述对作业的操作归纳成四种状态: z1、提交状态 用户将自己的程序和数据放在 输入设备上,等待; z2、后备状态 系统响应用户的要求,将作业 带领到直接存取的后援存储器中,等待调度; z3、执行状态 从作业计算开始,到计算完成 为止,该作业处于执行状态。 z4、完成状态 从作业计算完成开始,到善后 处理完毕退出系统为止

15、,称为作业完成状态。2.22作业、作业状态及转移2.23系统中各进程状态的分布和管理-1系统中各进程状态的分布: (例:一个只有一个处理机的系统中,OS的进程有运行、就 绪、阻塞三个基本状态。假如某时刻该系统中有10个进程 并发执行,在略去调度程序所占用时间情况下试问: 这时刻系统中处于运行态的进程数最多有几个?最少 有几个? 这时刻系统中处于就绪态的进程数最多有几个?最少 有几个? 这时刻系统中处于阻塞态的进程数最多有几个?最少 有几个? z 解:因为系统中只有一个处理机,所以某时刻处于运行态 的进程数最多只有一个。而最少可能为0,此时其它10个进 程一定全部排在各阻塞队列中,在就绪队列中没有进程。 而某时刻处于就绪态的进程数最多只有9个,不可能出现10 个情况,因为一旦CPU有空,调度程序马上调度,当然这是 在略去调度程序调度时间时考虑。处于阻塞态的进程数最 少是0个。(练习)2.245。系统中各进程状态转换影响运行 阻 塞就 绪运 行 阻 塞就 绪z A进程 B进程C进程 D进程运行 运 行 阻 塞就 绪阻 塞

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号