第2章处理器管理_第1页
第2章处理器管理_第2页
第2章处理器管理_第3页
第2章处理器管理_第4页
第2章处理器管理_第5页
已阅读5页,还剩97页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2022-6-26计算机科学系 操作系统课程组1 计算机科学与通信工程学院计算机科学与通信工程学院OS(Operating System)2022-6-26计算机科学系 操作系统课程组2概概 述述n操作系统的重要任务之一:操作系统的重要任务之一:n是充分、有效地利用系统的各类资源是充分、有效地利用系统的各类资源 n最宝贵的资源:处理器最宝贵的资源:处理器 n分配调度策略、处理冲突、资源回收分配调度策略、处理冲突、资源回收 n引入进程:引入进程:作为资源分配的基本单位和作为资源分配的基本单位和基本实体基本实体 n处理器的管理处理器的管理进程管理进程管理 n首先要介绍首先要介绍中断中断的概念的概念

2、 中断是实现处理器调度不可缺少的条件OS(Operating System)2022-6-26计算机科学系 操作系统课程组3n2.1 中断系统中断系统n2.2 多道程序与并发执行多道程序与并发执行n2.3 进程进程n2.4 线程线程n2.5 UNIX中的进程管理中的进程管理OS(Operating System)2022-6-26计算机科学系 操作系统课程组42.1 2.1 中断系统中断系统 n中断:中断:n在执行期间,发生任何非寻常的或非预期的急需处在执行期间,发生任何非寻常的或非预期的急需处理事件理事件使得使得CPU暂时中断当前程序的执行,而转暂时中断当前程序的执行,而转去执行相应的事件处

3、理程序,等到事件处理结束后去执行相应的事件处理程序,等到事件处理结束后又返回到原来被中断的程序继续执行的过程。又返回到原来被中断的程序继续执行的过程。 n中断的使用中断的使用n设备和设备和CPU之间之间的的通信通信:中断控制方式、:中断控制方式、DMA方式和通道方式方式和通道方式n其它特殊情况其它特殊情况OS(Operating System)2022-6-26计算机科学系 操作系统课程组52.1 2.1 中断系统中断系统n2.1.0 中断装置n2.1.1 中断系统的职能n2.1.2 中断的分类n2.1.3 中断的优先级n2.1.4 中断事件处理程序OS(Operating System)20

4、22-6-26计算机科学系 操作系统课程组62.1.2.1.0 0 中断装置中断装置n定义:定义: 发现产生中断事件的硬件装置称为中断装置。OS(Operating System)2022-6-26计算机科学系 操作系统课程组72.1.1 2.1.1 中断系统的职能中断系统的职能 主要做以下三件事主要做以下三件事:q发现中断源,提出中断请求发现中断源,提出中断请求:多个多个中断源中断源时,时,根据优先级,发出中断请求。根据优先级,发出中断请求。q保护现场保护现场:保存:保存处理器中处理器中存放程序状态字的存放程序状态字的寄存器信息寄存器信息,以便在中断处理结束后以便在中断处理结束后恢复运恢复运

5、行行。q启动处理事件的程序启动处理事件的程序:将处理中断程序的程将处理中断程序的程序状态字送入处理器的程序状态字寄存器,序状态字送入处理器的程序状态字寄存器,从而就引出了处理中断的程序。从而就引出了处理中断的程序。引起中断的事件OS(Operating System)2022-6-26计算机科学系 操作系统课程组8中断处理过程示意图中断处理过程示意图存放旧程序状态字(保护现场)存放旧程序状态字(保护现场)取出新程序状态字(引出中断处理程序)取出新程序状态字(引出中断处理程序) OS(Operating System)2022-6-26计算机科学系 操作系统课程组92314567发现中断源OS(

6、Operating System)2022-6-26计算机科学系 操作系统课程组102.1.2 2.1.2 中断的分类中断的分类 1 1软件中断(内部中断)软件中断(内部中断) 由由CPUCPU执行某些指令引起的中断;执行某些指令引起的中断; 2. 2. 硬件中断硬件中断 除除CPUCPU和内存以外的硬件系统发出的中和内存以外的硬件系统发出的中断信号而引起的中断断信号而引起的中断;OS(Operating System)2022-6-26计算机科学系 操作系统课程组112.1.2 2.1.2 中断的分类中断的分类n例:例:地址非法、除法出错、溢出中断地址非法、除法出错、溢出中断 异常中断异常中

7、断。 异常一般分为三类异常一般分为三类:n失效(失效(FaultsFaults)n陷阱(陷阱(TrapsTraps)n中止(中止(AbortAbort) 软软件件中中断:断:执行指令过程中产生的执行指令过程中产生的错误情况错误情况 OS(Operating System)2022-6-26计算机科学系 操作系统课程组122.1.2 2.1.2 中断的分类中断的分类时机:时机:n某条指令在启动之后真正执行之前被检某条指令在启动之后真正执行之前被检测到异常,产生中断;测到异常,产生中断;失效中断处理:失效中断处理:n进入相应的中断处理;进入相应的中断处理;n在中断服务完成后返回该条指令;在中断服务

8、完成后返回该条指令;n重新启动该指令并执行完成。重新启动该指令并执行完成。 软件中断软件中断失效:失效:OS(Operating System)2022-6-26计算机科学系 操作系统课程组132.1.2 2.1.2 中断的分类中断的分类时机:时机:执行执行产生陷阱的指令而引产生陷阱的指令而引起的。起的。n通常也称为自愿访管中断通常也称为自愿访管中断n例:例:DOSDOS中的中的INTINT和和UNIXUNIX中中TrapTrap命令命令的执行。的执行。软件中断软件中断陷阱:陷阱:OS(Operating System)2022-6-26计算机科学系 操作系统课程组142.1.2 2.1.2

9、中断的分类中断的分类n时机:时机:异常发生后无法确定造成异异常发生后无法确定造成异常指令的实际位置时常指令的实际位置时,原来的程序原来的程序已无法继续执行已无法继续执行n处理方式:处理方式:中断服务程序往往重新中断服务程序往往重新启动操作系统并重建系统表格启动操作系统并重建系统表格 n例:硬件错误或系统表格中的错误例:硬件错误或系统表格中的错误(主存出错)(主存出错) 软件中断软件中断中止中止OS(Operating System)2022-6-26计算机科学系 操作系统课程组152.1.2 2.1.2 中断的分类中断的分类例:例:I IO O设备发的中断、时钟中断。设备发的中断、时钟中断。n

10、硬件中断硬件中断的分类:的分类:n非屏蔽中断:非屏蔽中断:指不允许用户干预的指不允许用户干预的中断中断;一旦发出中断信号后,一旦发出中断信号后,CPUCPU要要立即响应。立即响应。 n可屏蔽中断:可屏蔽中断:可可通过每一类中断源通过每一类中断源设置一个中断屏蔽触发器设置一个中断屏蔽触发器,屏蔽它屏蔽它们的中断请求们的中断请求。(。(大多数硬件中断大多数硬件中断都是可屏蔽中断)都是可屏蔽中断) 硬硬件件中中断断OS(Operating System)2022-6-26计算机科学系 操作系统课程组162.1.3 2.1.3 中断的优先级中断的优先级n问题问题:n多个中断信号同时产生时多个中断信号同

11、时产生时,如何进行处理,如何进行处理n有些中断服务是不允许其它中断打断有些中断服务是不允许其它中断打断n有些中断要优先处理有些中断要优先处理n中断服务期间要响应比它更紧急的中断中断服务期间要响应比它更紧急的中断 OS(Operating System)2022-6-26计算机科学系 操作系统课程组172.1.3 2.1.3 中断的优先级中断的优先级n解决方法解决方法n为每个中断确定一个中断优先级为每个中断确定一个中断优先级n定义:多个中断事件同时发生时,中断定义:多个中断事件同时发生时,中断装置应按规定的顺序来响应,该顺序称装置应按规定的顺序来响应,该顺序称为中断优先级。为中断优先级。n 如何

12、实现如何实现中断优先级中断优先级软件查询软件查询硬件处理硬件处理OS(Operating System)2022-6-26计算机科学系 操作系统课程组182.1.3 2.1.3 中断的优先级中断的优先级n中断优先级由查询的顺序决定中断优先级由查询的顺序决定n先被查询的中断具有高的优先级先被查询的中断具有高的优先级n设置一个中断请求信号的寄存器设置一个中断请求信号的寄存器n将各中断信号保存下来以便查询将各中断信号保存下来以便查询n对没有处理的中断请求作一个备忘录对没有处理的中断请求作一个备忘录n优点优点:可利用修改软件的方法来改变中断优先级,可利用修改软件的方法来改变中断优先级,而不必要更改硬件

13、。而不必要更改硬件。 n不足不足:服务效率低服务效率低(先将优先级高的设备查询一遍先将优先级高的设备查询一遍 )软软件件查查询询OS(Operating System)2022-6-26计算机科学系 操作系统课程组192.1.3 2.1.3 中断的优先级中断的优先级n克服软件方式的缺点克服软件方式的缺点n采用硬件编码器来组成中断优先级电路采用硬件编码器来组成中断优先级电路n根据编码器的编码形式确定各个中断信根据编码器的编码形式确定各个中断信号的优先级号的优先级n优点:优点:响应速度快,中断能及时得到响应速度快,中断能及时得到处理。处理。n缺点:缺点:修改优先级困难,不灵活。修改优先级困难,不灵

14、活。 硬硬件件处处理理OS(Operating System)2022-6-26计算机科学系 操作系统课程组202.1.4 2.1.4 中断事件处理程序中断事件处理程序n一般分为三类一般分为三类:n1.1.处理器中断事件的处理处理器中断事件的处理n2.2.自愿中断事件的处理自愿中断事件的处理n3.3.外部中断事件的处理外部中断事件的处理OS(Operating System)2022-6-26计算机科学系 操作系统课程组21中断处理程序中断处理程序n定义:定义:处理中断事件的处理控制程序n任务:任务:处理中断事件,恢复正常操作。n主要完成的工作:主要完成的工作:n保护未被硬件保护的内容n取出中

15、断字分析;n根据中断原因转不同处理;n恢复正常操作(恢复运行某一程序、重新调度另一程序运行、重新启动OS)OS(Operating System)2022-6-26计算机科学系 操作系统课程组221. 1. 处理器中断事件的处理处理器中断事件的处理n这种事件是由硬件的故障而产生;这种事件是由硬件的故障而产生;n排除这种故障必须进行人工干预;排除这种故障必须进行人工干预;n应付措施应付措施:(1)(1)保护现场防止故障曼延保护现场防止故障曼延(2)(2)报告操作员并提供故障信息以便维修和校正报告操作员并提供故障信息以便维修和校正(3)(3)对程序中所造成的破坏进行估价和恢复对程序中所造成的破坏进

16、行估价和恢复 OS(Operating System)2022-6-26计算机科学系 操作系统课程组23例:发生电源故障中断事件的处理例:发生电源故障中断事件的处理n掉电时掉电时做以下三项工作做以下三项工作n处理器中有关寄存器内的信息送主存储器保存起来,处理器中有关寄存器内的信息送主存储器保存起来,以便在故障排除后恢复现场继续工作。以便在故障排除后恢复现场继续工作。n停止外围设备工作停止外围设备工作;不能立即停止不能立即停止,将,将设备记录下来设备记录下来。n停止处理器工作停止处理器工作。n故障排除后故障排除后,从一个约定点启动操作系统从一个约定点启动操作系统 :n启动被停止的外围设备继续工作

17、启动被停止的外围设备继续工作。n如果发生故障时,有不能立即停止的外围设备正在工如果发生故障时,有不能立即停止的外围设备正在工作,那么涉及这些外围设备的程序将被停止执行而等作,那么涉及这些外围设备的程序将被停止执行而等待操作员的干预命令。待操作员的干预命令。n选择可以运行的程序继续运行。选择可以运行的程序继续运行。OS(Operating System)2022-6-26计算机科学系 操作系统课程组242. 2. 自愿中断事件的处理自愿中断事件的处理n由系统程序或用户程序执行由系统程序或用户程序执行访管指令访管指令而引而引起的(起的(程序对操作系统功能的调用程序对操作系统功能的调用)n访管指令访

18、管指令(广义指令广义指令)包括包括n操作码操作码:表:表示这条指令是访管指令示这条指令是访管指令 n访管参数访管参数(广义指令的操作码广义指令的操作码):):表示具体的表示具体的访管要求访管要求 系统调用OS(Operating System)2022-6-26计算机科学系 操作系统课程组252. 2. 自愿中断事件的处理自愿中断事件的处理自愿中断事件处理过程:自愿中断事件处理过程:n硬件在执行访管指令时硬件在执行访管指令时:n把访管参数作为中断字并入程序状态字把访管参数作为中断字并入程序状态字,送入主存送入主存指定单元指定单元;n转转向操作系统处理向操作系统处理。n操作系统接收到后操作系统接

19、收到后n分析访管参数分析访管参数n进行合法性检查进行合法性检查n照访管参数的要求进行相应的处理照访管参数的要求进行相应的处理OS(Operating System)2022-6-26计算机科学系 操作系统课程组262. 2. 自愿中断事件的处理自愿中断事件的处理n访管指令访管指令的用处:的用处: 向操作系统提出向操作系统提出n启动外围设备的要求启动外围设备的要求n控制程序的要求控制程序的要求n申请主存资源申请主存资源的要求的要求n申请外围设备的要求申请外围设备的要求OS(Operating System)2022-6-26计算机科学系 操作系统课程组273. 3. 外部中断事件的处理外部中断事

20、件的处理n包括包括n时钟的定时中断时钟的定时中断n来自控制台的信息来自控制台的信息 n控制台中断事件的处理控制台中断事件的处理n使用控制台开关,就产生一个控制台中断;使用控制台开关,就产生一个控制台中断;n处理这种中断处理这种中断= =接受一条操作命令接受一条操作命令;n转向处理操作命令的执行程序转向处理操作命令的执行程序。OS(Operating System)2022-6-26计算机科学系 操作系统课程组283. 3. 外部中断事件的处理外部中断事件的处理n时钟中断事件的处理时钟中断事件的处理n时钟可以分成绝对时钟和间隔时钟时钟可以分成绝对时钟和间隔时钟;n绝对时钟中断绝对时钟中断n系统有

21、一个绝对时钟寄存器系统有一个绝对时钟寄存器, ,定时加定时加1 1;n当寄存器溢出时,就产生一次绝对时钟中断;当寄存器溢出时,就产生一次绝对时钟中断;n处理时,只要在主存的固定单元上加处理时,只要在主存的固定单元上加1 1。n固定单元记录了绝对时钟中断的次数,绝对时固定单元记录了绝对时钟中断的次数,绝对时间为固定单元内容与绝对时钟寄存器值的综合。间为固定单元内容与绝对时钟寄存器值的综合。OS(Operating System)2022-6-26计算机科学系 操作系统课程组293.3.外部中断事件的处理外部中断事件的处理n间隔时钟间隔时钟中断中断n间隔时钟寄存器中放一个预定的值间隔时钟寄存器中放

22、一个预定的值;n定时将一个间隔时钟寄存器的内容减定时将一个间隔时钟寄存器的内容减1 1;n寄存器的内容为寄存器的内容为0 0时,产生一个间隔时钟中时,产生一个间隔时钟中断。断。n起闹钟作用,进行控制调度。起闹钟作用,进行控制调度。OS(Operating System)2022-6-26计算机科学系 操作系统课程组302.2 2.2 多道程序与并发执行多道程序与并发执行n本节内容:本节内容:n分析程序顺序执行的特点分析程序顺序执行的特点n对程序顺序执行的缺点进行对程序顺序执行的缺点进行分析分析n引入程序的并发执行解决问引入程序的并发执行解决问题题n分析分析程序的并发执行和特点程序的并发执行和特

23、点 2.2.1 程序的顺序执行和特点2.2.2 程序的并发执行和特点OS(Operating System)2022-6-26计算机科学系 操作系统课程组312.2.1 2.2.1 程序的顺序执行和特点程序的顺序执行和特点n计算机上运行的是:程序计算机上运行的是:程序n程序程序:是指令的有序集合是指令的有序集合它规定完成某一任务时所需做的各种操作它规定完成某一任务时所需做的各种操作规定规定操作顺序操作顺序单道程序系统:单道程序系统:每次只允许一道程序进入每次只允许一道程序进入计算机执行的系统。计算机执行的系统。OS(Operating System)2022-6-26计算机科学系 操作系统课程

24、组322.2.1 2.2.1 程序的顺序执行和特点程序的顺序执行和特点n单道程序系统单道程序系统n每次只允许一道程序运行每次只允许一道程序运行;n它将独占系统资源(处理器、主存、辅存、它将独占系统资源(处理器、主存、辅存、外设、软件)外设、软件)n系统按照程序的步骤顺序地执行系统按照程序的步骤顺序地执行。n在该程序执行完之前,其它程序只能等待。在该程序执行完之前,其它程序只能等待。 OS(Operating System)2022-6-26计算机科学系 操作系统课程组332.2.1 2.2.1 程序的顺序执行和特点程序的顺序执行和特点n例:假设有两道程序都需运行,在单道例:假设有两道程序都需运

25、行,在单道程序系统中的运行情况如下:程序系统中的运行情况如下:nI I代表输入,用代表输入,用C C代表计算,代表计算,P P代表打印代表打印程序程序1程序程序2I1C1P1I2C2P2OS(Operating System)2022-6-26计算机科学系 操作系统课程组342.2.1 2.2.1 程序的顺序执行和特点程序的顺序执行和特点n顺序执行的特点:顺序执行的特点:n程序执行的顺序性程序执行的顺序性:前一步完才做下一步;:前一步完才做下一步;n程序运行时对资源的独占性程序运行时对资源的独占性:没有其它程序没有其它程序与之争夺与之争夺资源资源n程序结果的可再现性程序结果的可再现性:程序执行

26、的结果与执程序执行的结果与执行速度、时间无关。行速度、时间无关。n程序结果的封闭性程序结果的封闭性:程序的运行:程序的运行只由初始条只由初始条件和程序本身来确定件和程序本身来确定。OS(Operating System)2022-6-26计算机科学系 操作系统课程组352.2.1 2.2.1 程序的顺序执行和特点程序的顺序执行和特点n优点优点:系统管理简单系统管理简单n缺点缺点:使系统的资源得不到充分的使系统的资源得不到充分的利用。利用。中断和通道技术的引入中断和通道技术的引入OS(Operating System)2022-6-26计算机科学系 操作系统课程组362.2.2 2.2.2 程序

27、的并发执行和特点程序的并发执行和特点n程序的并发执行程序的并发执行:n一道程序不用某一系统资源一道程序不用某一系统资源, ,另一道程序就另一道程序就可以马上利用可以马上利用n多道程序并发执行的情形:多道程序并发执行的情形:n宏观宏观:同时驻留在主存的几道程序都按照自同时驻留在主存的几道程序都按照自己的程序规定动作己的程序规定动作执行执行;n微观微观:是这几道程序交替执行是这几道程序交替执行;PQR并发执行区OS(Operating System)2022-6-26计算机科学系 操作系统课程组372.2.2 2.2.2 程序的并发执行和特点程序的并发执行和特点n例如例如: : I1I1、C1C1

28、、P1P1的执行必须严的执行必须严格按照格按照I1I1,C1C1,P1P1的顺序,的顺序,而而P1P1与与I2I2,C1C1与与I2,I3I2,I3与与P1P1是可是可以同时执行的。以同时执行的。OS(Operating System)2022-6-26计算机科学系 操作系统课程组382.2.2 2.2.2 程序的并发执行和特点程序的并发执行和特点n程序的并发执行的特点程序的并发执行的特点:n程序执行时的资源共享性程序执行时的资源共享性:硬资源硬资源、软件资软件资源源(系统软件系统软件、数据数据););n程序失去了封闭性和可再现性程序失去了封闭性和可再现性:举例举例n并发程序之间的相互制约性并

29、发程序之间的相互制约性:共享系统内的共享系统内的资源,因此程序之间产生相互制约关系。资源,因此程序之间产生相互制约关系。n并发程序活动规律并发程序活动规律:执行执行暂停暂停执行执行n程序程序:静态概念静态概念(难于描述动态系统难于描述动态系统)进程OS(Operating System)2022-6-26计算机科学系 操作系统课程组39例:nVar n:integer Var n:integer 设置一个共享设置一个共享变量变量 begin begin n:=0 ; n:=0 ; 变量变量n n初值为初值为00 cobegin cobegin 进入并发执行进入并发执行 program A;pr

30、ogram A; begin begin L1: n:=n+1; L1: n:=n+1; 程序程序A A每次对每次对n+1n+1 goto L1 goto L1 无限循环无限循环 endend program B;program B;beginbeginL2:print(n); L2:print(n); 程序程序B B每次打印值每次打印值 n:=0; n:=0; 并将并将n n置为置为00 goto L2 goto L2 无限循环无限循环 endend coend coend 并发结束并发结束 endendOS(Operating System)2022-6-26计算机科学系 操作系统课程组4

31、02.3 2.3 进程进程2.3.1 2.3.1 进程的概念进程的概念2.3.2 2.3.2 进程的进程的实体实体2.3.3 2.3.3 进程状态和转进程状态和转换换2.3.4 2.3.4 进程进程的的控制控制2.3.5 2.3.5 进程进程的的调度调度n进程的引入:进程的引入:n程序的缺点:无法表示程序的缺点:无法表示系统的动态特性,如:两系统的动态特性,如:两个用户同时执行个用户同时执行CCCC编译自编译自己的程序,某时刻程序的己的程序,某时刻程序的执行状态难以刻画(运行、执行状态难以刻画(运行、就绪、等待?)。就绪、等待?)。n引入进程(程序处理引入进程(程序处理对象)可表示执行动态特对

32、象)可表示执行动态特性。性。OS(Operating System)2022-6-26计算机科学系 操作系统课程组412.3.1 2.3.1 进程的概念进程的概念n进程的进程的六种理解方法(六种理解方法(任务任务、活动活动)n任何一个处于执行的程序任何一个处于执行的程序。n可以和别的计算并发执行的计算。可以和别的计算并发执行的计算。n程序及其数据在处理器上顺序执行时的活动。程序及其数据在处理器上顺序执行时的活动。n抽象实体,当它执行一个任务时,将要分配和释放各种抽象实体,当它执行一个任务时,将要分配和释放各种资源。资源。n独立的可以调度的活动。独立的可以调度的活动。n具有独立功能的程序关于某个

33、数据集合的一次运行活动。具有独立功能的程序关于某个数据集合的一次运行活动。 OS(Operating System)2022-6-26计算机科学系 操作系统课程组422.3.1 2.3.1 进程的概念进程的概念n进程的定义进程的定义(程序段(程序段+ +数据)数据)n能和其它程序并行执行的程序段在某数据集合上的能和其它程序并行执行的程序段在某数据集合上的一一次运行过程次运行过程,它是系统资源分配和调度的一个,它是系统资源分配和调度的一个独立单独立单位位。n注意的问题:注意的问题:n程序段可以并行执行。程序段可以并行执行。(并发性并发性)n基础是一个基础是一个程序段程序段,而不是整个程序。,而不

34、是整个程序。n程序段在数据上的一次运行程序段在数据上的一次运行(某数据集合上的某数据集合上的运行)运行)n动态的,是程序的一次执行过程动态的,是程序的一次执行过程。(动态性动态性)n能独立运行的基本单位能独立运行的基本单位。(独立性独立性)OS(Operating System)2022-6-26计算机科学系 操作系统课程组432.3.1 2.3.1 进程的概念进程的概念n进程和程序的区别进程和程序的区别: :n进程进程是一段程序的一次运行活动是一段程序的一次运行活动:动态动态概念;概念;有一定有一定“生命生命期期”。n程序程序是一组指令的集合:是一组指令的集合:静态静态概念概念n程序段运行在

35、两个程序段运行在两个不同数据集合不同数据集合上,就是两个不同的进程上,就是两个不同的进程;n一个程序可以对应多个进程一个程序可以对应多个进程;n一个进程至少要对应一个程序,或对应多个程序,多个进程一个进程至少要对应一个程序,或对应多个程序,多个进程也可对应相同的程序。也可对应相同的程序。n进程具有并行特征(独立性和异步性)进程具有并行特征(独立性和异步性)n进程是资源分配的进程是资源分配的基本单位基本单位例子:光盘(例子:光盘(CDCD、VCDVCD)光盘(程序光盘(程序) )放光盘的放光盘的活动(进程)活动(进程)OS(Operating System)2022-6-26计算机科学系 操作系

36、统课程组442.3.1 2.3.1 进程的概念进程的概念进程与作业的关系进程与作业的关系: :v 作业是用户向计算机提交任务的实体作业是用户向计算机提交任务的实体,进程进程是完成任务的实体是完成任务的实体v 作业可由多个进程组成作业可由多个进程组成(至少一个至少一个),反之不反之不然然v 作业主要存在于批处理系统作业主要存在于批处理系统,而进程可存在而进程可存在于所有形式的操作系统中。于所有形式的操作系统中。OS(Operating System)2022-6-26计算机科学系 操作系统课程组452.3.2 2.3.2 进程的实体进程的实体n1 1、进程的组成、进程的组成n程序程序:进程进程完

37、整的程序完整的程序、一部分程序一部分程序;n数据集合数据集合:运运行需要的数据行需要的数据、工作区域工作区域;n进程控制块进程控制块(PCB):):描述和标志进程描述和标志进程(创建进程创建进程时,时,建立建立PCBPCB;完成任务被撤销完成任务被撤销时时,撤销撤销PCB。)。)物质物质基础基础n纯代码(纯代码(purepure)n它在执行中自身不改变。它在执行中自身不改变。n也称为可重入(也称为可重入(Reentry););享用该程序的各进程享用该程序的各进程应提供工作区。应提供工作区。OS(Operating System)2022-6-26计算机科学系 操作系统课程组462.3.2 2.

38、3.2 进程的实体进程的实体n进程控制块进程控制块 PCB (Process PCB (Process Control Block)Control Block)n 存放进程的管理和控制信存放进程的管理和控制信息(标识信息,说明信息,息(标识信息,说明信息,现场信息,管理信息)的数现场信息,管理信息)的数据结构称为进程控制块。在据结构称为进程控制块。在创建进程时,建立创建进程时,建立PCBPCB,并并伴随进程运行的全过程,直伴随进程运行的全过程,直到进程撤消而撤消。到进程撤消而撤消。PCBPCB就就象我们的户口表。象我们的户口表。标识说明现场OS(Operating System)2022-6-

39、26计算机科学系 操作系统课程组472.3.2 2.3.2 进程的实体进程的实体n2. PCB的组织方式的组织方式(为了管理上的为了管理上的方便)方便)n线性方式线性方式:所有的:所有的PCB组成一个数组;组成一个数组;n链接方式链接方式:运行队列、就绪队列、阻塞队运行队列、就绪队列、阻塞队列;列;n索引方式索引方式:建立建立N N张索引表。例如就绪索张索引表。例如就绪索引表、阻塞索引表等。引表、阻塞索引表等。 OS(Operating System)2022-6-26计算机科学系 操作系统课程组482.3.2 2.3.2 进程的实体进程的实体n线性方式线性方式nPCB使用一个数组来组织和保存

40、使用一个数组来组织和保存n通过下标访问通过下标访问PCBn缺点:找到某一状态的缺点:找到某一状态的PCB,需要扫描整个线性表;需要扫描整个线性表;PCBPCBPCBPCBOS(Operating System)2022-6-26计算机科学系 操作系统课程组492.3.2 2.3.2 进程的实体进程的实体n链接方式链接方式n将具有相同状态的将具有相同状态的PCB,使用链表的使用链表的形式组成一个队列;形式组成一个队列;n系统使用固定单元,保存各队列的第系统使用固定单元,保存各队列的第一个一个PCB的起始地址;的起始地址;n队列类型:运行队列(多处理机)、队列类型:运行队列(多处理机)、就绪队列、

41、阻塞队列;就绪队列、阻塞队列;OS(Operating System)2022-6-26计算机科学系 操作系统课程组502.3.2 2.3.2 进程的实体进程的实体运行队列运行队列就绪队列就绪队列阻塞队列阻塞队列OS(Operating System)2022-6-26计算机科学系 操作系统课程组512.3.2 2.3.2 进程的实体进程的实体n索引方式索引方式n还是使用统一的队列存放还是使用统一的队列存放PCB;n根据所有进程状态,建立根据所有进程状态,建立N张索张索引表;引表;n索引表的首地址记录于内存中的索引表的首地址记录于内存中的专用单元中;专用单元中;OS(Operating Sys

42、tem)2022-6-26计算机科学系 操作系统课程组522.3.3 2.3.3 进程状态和转换进程状态和转换n1. 1. 进程的三种基本状态进程的三种基本状态n进程:动态的概念,表示了执行过程。(生命进程:动态的概念,表示了执行过程。(生命期)期)n为了便于管理:对进程的不同时刻的不同状况,为了便于管理:对进程的不同时刻的不同状况,进行划分;进行划分;n三种三种基本基本状态状态(按照对资源的占用情况)(按照对资源的占用情况)n就绪状态:就绪状态:n执行状态:执行状态:n阻塞状态:阻塞状态:OS(Operating System)2022-6-26计算机科学系 操作系统课程组532.3.3 2

43、.3.3 进程状态和转换进程状态和转换n(1)就绪状态)就绪状态n进程其它全部资源;但不能占用进程其它全部资源;但不能占用CPU;n一旦获得一旦获得CPU就可以执行;就可以执行;n(2)执行状态执行状态n已获得必要的资源并占有已获得必要的资源并占有CPU,正在执行;正在执行;n单处理器系统:只能有一个进程处于执行状态单处理器系统:只能有一个进程处于执行状态n多机处理系统:可能有多个进程处于执行状态多机处理系统:可能有多个进程处于执行状态 n(3)阻塞(等待)状态)阻塞(等待)状态n进程因等待某一事件而暂不能执行的状态;进程因等待某一事件而暂不能执行的状态;n是等待除是等待除CPU外的资源或事件

44、。外的资源或事件。CPU是一类特殊的资源是一类特殊的资源OS(Operating System)2022-6-26计算机科学系 操作系统课程组542.3.3 2.3.3 进程状态和转换进程状态和转换n状态的细分状态的细分(为了管理和调度的便利,如(为了管理和调度的便利,如PDP11的的UNIX)n运行状态(执行、就绪状态):运行状态(执行、就绪状态):n高优先级睡眠状态:高优先级睡眠状态:n低优先级睡眠状态:低优先级睡眠状态:n创建进程状态:正在被创建时创建进程状态:正在被创建时n等待终止处理状态:运行结束未撤消时等待终止处理状态:运行结束未撤消时n暂停状态:被跟踪时暂停状态:被跟踪时本质:在

45、三态的基础上再分。本质:在三态的基础上再分。等待或阻塞状态OS(Operating System)2022-6-26计算机科学系 操作系统课程组552.3.3 2.3.3 进程状态和转换进程状态和转换n2. 进程状态的转换(进程状态的转换(运行过程中)运行过程中)n产生的原因:产生的原因:n自身的进展情况自身的进展情况n与其它进程并发执行与其它进程并发执行n外界条件的变化外界条件的变化OS(Operating System)2022-6-26计算机科学系 操作系统课程组562.3.3 2.3.3 进程状态和转换进程状态和转换资源满足且获得资源满足且获得CPU(选中)选中) 时间片用完(落选)时

46、间片用完(落选)等待事件已发生等待事件已发生(资源得到满足)(资源得到满足) 等待事件发生等待事件发生(等待资源)(等待资源)n 状态转换状态转换OS(Operating System)2022-6-26计算机科学系 操作系统课程组572.3.3 2.3.3 进程状态和转换进程状态和转换nUNIX中的实际例子中的实际例子等待终止等待终止处理状态处理状态占有处占有处理器理器 睡眠状态睡眠状态 高优先级高优先级 低优先低优先级级 睡眠睡眠 睡眠睡眠等待处等待处理器理器暂停暂停退出退出调调度度睡眠睡眠唤醒唤醒停停止止跟跟踪踪跟跟踪踪OS(Operating System)2022-6-26计算机科学

47、系 操作系统课程组582.3.4 2.3.4 进程控制进程控制n进程是有生命周期的,产生、运行、暂停、终进程是有生命周期的,产生、运行、暂停、终止。对进程的这些操作叫进程控制。止。对进程的这些操作叫进程控制。n 进程控制的职责是对系统中全部进程实施有进程控制的职责是对系统中全部进程实施有效的管理,它是处理机管理的部分(效的管理,它是处理机管理的部分(另一部分另一部分是进程调度)是进程调度),当系统允许多进程并发执行时,当系统允许多进程并发执行时,为了实现共享、协调并发进程的关系,处理机为了实现共享、协调并发进程的关系,处理机管理必须提供对进程实行有效的管理。管理必须提供对进程实行有效的管理。O

48、S(Operating System)2022-6-26计算机科学系 操作系统课程组592.3.4 2.3.4 进程控制进程控制n问题:问题:n进程的三态和转换,如何控制它们的进行进程的三态和转换,如何控制它们的进行:n如何对进程的整个生命期进行控制:创建、撤消如何对进程的整个生命期进行控制:创建、撤消n进程控制的主要任务进程控制的主要任务:n对系统中所有进程从创建到消亡的全过程实行有对系统中所有进程从创建到消亡的全过程实行有效地管理和控制。效地管理和控制。n包括包括n对进程状态变化加以管理和控制;对进程状态变化加以管理和控制;n创建新进程和撤消已完成任务的进程;创建新进程和撤消已完成任务的进

49、程;OS(Operating System)2022-6-26计算机科学系 操作系统课程组602.3.4 2.3.4 进程控制进程控制n进程控制包括:进程控制包括: 进程创建进程创建、 进程撤消进程撤消、 进程阻塞进程阻塞、 进程唤醒进程唤醒。 这些操作都要对应地执行一个特殊的程序这些操作都要对应地执行一个特殊的程序段(操作系统核心程序),同时系统也通段(操作系统核心程序),同时系统也通过系统调用给用户提供进程控制的功能。过系统调用给用户提供进程控制的功能。教材上叫教材上叫原语原语(一种特殊的系统调用)。(一种特殊的系统调用)。 n原语:原语: n用于完成特定功能的一段程用于完成特定功能的一段

50、程序模块;序模块;n执行期间不可分割。执行期间不可分割。OS(Operating System)2022-6-26计算机科学系 操作系统课程组612.3.4 2.3.4 进程控制进程控制n运行状态运行状态 等待状态等待状态 n 进程阻塞进程阻塞n等待状态等待状态 就绪状态就绪状态 n 进程唤醒进程唤醒n新建进程置为就绪状态新建进程置为就绪状态 n 进程创建进程创建n进程终止(消亡进程终止(消亡) n 进程撤消进程撤消n就绪状态就绪状态 运行状态运行状态 n 进程调度进程调度OS(Operating System)2022-6-26计算机科学系 操作系统课程组622.3.4 2.3.4 进程控制

51、进程控制nOS的内核中,用于进程控制的原语的内核中,用于进程控制的原语n创建原语创建原语n撤销原语撤销原语n阻塞原语阻塞原语n唤醒原语唤醒原语 对应进程的建立和撤消对应进程的建立和撤消对应进程状态转换对应进程状态转换使进程在等待和就绪态之间转换使进程在等待和就绪态之间转换OS(Operating System)2022-6-26计算机科学系 操作系统课程组632.3.4 2.3.4 进程控制进程控制n. .创建原语创建原语用于建立新的进程。用于建立新的进程。建立进程的两种方式建立进程的两种方式由操作系统建立;由操作系统建立;由其它进程创建一个新的进程;由其它进程创建一个新的进程;n形成父子进程

52、关系形成父子进程关系 建立过程建立过程AB1B2C1C2C3OS(Operating System)2022-6-26计算机科学系 操作系统课程组642.3.4 2.3.4 进程控制进程控制n创建过程创建过程填写相关信息填写相关信息申请申请PCB,分配惟一的数字标示符分配惟一的数字标示符 c调入程序调入程序设置为设置为就绪就绪状态状态OS(Operating System)2022-6-26计算机科学系 操作系统课程组652.3.4 2.3.4 进程控制进程控制n2. 2. 撤消原语撤消原语n完成任务后完成任务后,释放它所占用的资源释放它所占用的资源;n实质实质:n撤消进程存在撤消进程存在标志

53、标志(进程控制块进程控制块PCB)n并释放资源并释放资源n包括子孙进程包括子孙进程OS(Operating System)2022-6-26计算机科学系 操作系统课程组662.3.4 2.3.4 进程控制进程控制n进程撤销过程进程撤销过程检索该进程检索该进程PCB从相应队列删除从相应队列删除查找所有的子孙进程查找所有的子孙进程释放这些进程释放这些进程的资源包括的资源包括PCB如进程原来如进程原来为执行状态为执行状态重新调度重新调度进程执行进程执行OS(Operating System)2022-6-26计算机科学系 操作系统课程组672.3.4 2.3.4 进程控制进程控制n3. 3. 阻塞原

54、语阻塞原语n使用原因:因缺乏资源、等待使用原因:因缺乏资源、等待I/O操作(也操作(也是资源的一种形式)等,而使用;是资源的一种形式)等,而使用;n使用目的:阻塞自己,进入阻塞态,使使用目的:阻塞自己,进入阻塞态,使OS可以调度别的进程进入执行态。可以调度别的进程进入执行态。OS(Operating System)2022-6-26计算机科学系 操作系统课程组682.3.4 2.3.4 进程控制进程控制n阻塞过程阻塞过程保存当前进程的现场保存当前进程的现场设置进程状态为等待设置进程状态为等待进程进入阻塞队列进程进入阻塞队列转进程调度转进程调度选择一个就绪态进程执行选择一个就绪态进程执行例如,进

55、程是因等待打印机而进入阻塞状态,则该进例如,进程是因等待打印机而进入阻塞状态,则该进程将加入到等待打印机的队列。进程挂起的系统调用程将加入到等待打印机的队列。进程挂起的系统调用算法和队列变化如下:算法和队列变化如下:OS(Operating System)2022-6-26计算机科学系 操作系统课程组692.3.4 2.3.4 进程控制进程控制n4. 4. 唤醒原语唤醒原语n使用条件:某个资源得到满足使用条件:某个资源得到满足n目的:唤醒所有等待该资源的进程,放入就目的:唤醒所有等待该资源的进程,放入就绪队列,等待调度;绪队列,等待调度;n唤醒过程:唤醒过程:从等待队列中摘下进程从等待队列中摘

56、下进程设置进程状态为就绪设置进程状态为就绪进程进入就绪队列进程进入就绪队列转进程调度转进程调度或返回原进程或返回原进程OS(Operating System)2022-6-26计算机科学系 操作系统课程组702.3.4 2.3.4 进程控制进程控制n注意的问题:注意的问题:n创建原语创建原语和和撤消原语撤消原语 n阻塞原语阻塞原语和和唤醒原语唤醒原语n分别都是一对相对的操作原语分别都是一对相对的操作原语n使用时,要注意成对的使用。使用时,要注意成对的使用。OS(Operating System)2022-6-26计算机科学系 操作系统课程组712.3.5 2.3.5 进程调度(处理器调度进程调

57、度(处理器调度 )n前面:前面:n进程的三态进程的三态n进程操作中的几个原语控制状态转换进程操作中的几个原语控制状态转换n没有解决的:就绪态没有解决的:就绪态执行态按什么策略转换执行态按什么策略转换n本节:本节:n按照什么样的策略进行就绪态按照什么样的策略进行就绪态执行态的调度执行态的调度n产生的原因:产生的原因:n 系统资源有限系统资源有限n用户进程数往往多于处理器数目;用户进程数往往多于处理器数目;n不可能同时执行不可能同时执行n同时,处理器是计算机中的一类最特殊的资源。同时,处理器是计算机中的一类最特殊的资源。OS(Operating System)2022-6-26计算机科学系 操作系

58、统课程组722.3.5 2.3.5 进程调度进程调度n调度的层次调度的层次(三级)(三级)n高级调度高级调度(宏调度或作业调度)(宏调度或作业调度)n作业作业:用户在一次计算或处理过程中,要求计算机:用户在一次计算或处理过程中,要求计算机所做的一系列工作的集合。所做的一系列工作的集合。n高级调度(宏调度或作业调度)高级调度(宏调度或作业调度):按某种原则从外:按某种原则从外存的后备作业中,选一个或几个进入内存,并为其存的后备作业中,选一个或几个进入内存,并为其运行做好有关准备工作;将作业变为一个或一组进运行做好有关准备工作;将作业变为一个或一组进程,分配必要的资源,进入就绪队列。程,分配必要的

59、资源,进入就绪队列。批处理系统批处理系统中用中用分时系统分时系统不用不用OS(Operating System)2022-6-26计算机科学系 操作系统课程组732.3.5 2.3.5 进程调度(处理器调度进程调度(处理器调度 )n中级调度中级调度:内外存之间的进程对换,将内存中内外存之间的进程对换,将内存中处于等待态的进程调到外存对换区,将对换区中处于等待态的进程调到外存对换区,将对换区中处于就绪态的进程调到内存,解决内存紧张问题。处于就绪态的进程调到内存,解决内存紧张问题。n用用“挂起挂起”和和“解挂解挂”命令调整系统负荷。命令调整系统负荷。n低级调度低级调度:微调度或进程调度微调度或进程

60、调度 n决定就绪队列中哪个进程将获得处理器;决定就绪队列中哪个进程将获得处理器;n常驻内存,执行频率很高,几十毫秒一次常驻内存,执行频率很高,几十毫秒一次批处理系统批处理系统分时系统分时系统都用都用OS(Operating System)2022-6-26计算机科学系 操作系统课程组742.3.5 2.3.5 进程调度进程调度n调度的功能调度的功能(由调度程序来实现)(由调度程序来实现)n保护执行进程的现场(程序状态寄存器、指保护执行进程的现场(程序状态寄存器、指令计数器、通用寄存器)令计数器、通用寄存器)n查询、登记和更新查询、登记和更新PCB的相应项,选择合适的相应项,选择合适的进程执行(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论