《操作系统处理器管理.ppt》由会员分享,可在线阅读,更多相关《操作系统处理器管理.ppt(39页珍藏版)》请在优知文库上搜索。
1、第三章 操作系统处理器管理1 第三章 操作系统处理器管理2 作业和进程作业和进程特权指令、处理器状态特权指令、处理器状态 处理器管理处理器管理第三章 操作系统处理器管理3 作业、作业步作业、作业步 作业作业:用户在一次算题过程中或一个事务:用户在一次算题过程中或一个事务处理中要求计算机系统所作工作的集合。处理中要求计算机系统所作工作的集合。作业步作业步:构成作业的有序步骤。一个作业:构成作业的有序步骤。一个作业步运行的结果产生下一个作业步所需的文步运行的结果产生下一个作业步所需的文件。件。例如一个例如一个C语言程序要经历语言程序要经历编辑、编译、连编辑、编译、连接、运行接、运行四个作业步。四个
2、作业步。第三章 操作系统处理器管理4 进程和程序进程和程序 进程:进程:是程序的执行,因此属于是程序的执行,因此属于动态的动态的概概念;念; 程序:程序:是一组指令的集合,属于是一组指令的集合,属于静态的静态的概念。概念。 进程进程有诞生(创建进程)和死亡(撤消进有诞生(创建进程)和死亡(撤消进程),因此程),因此进程的存在是暂时的进程的存在是暂时的,而,而程序程序的存在是永久的的存在是永久的。第三章 操作系统处理器管理5 (1) 特权指令特权指令:只能由操作系统使用。:只能由操作系统使用。(2) 非特权指令非特权指令: 供一般用户使用。供一般用户使用。(对应两种不同的指令,处理器有两种执行状
3、态对应两种不同的指令,处理器有两种执行状态) 管态管态:又称主态、执行状态:又称主态、执行状态, 此时处理器执行此时处理器执行特权指令。特权指令。 目态目态:又称算态、题目状态,此时处理器处:又称算态、题目状态,此时处理器处于用户执行状态。于用户执行状态。第三章 操作系统处理器管理6 处理器管理又称处理器管理又称处理器调度处理器调度,它一般分为两级:,它一般分为两级:v 作业调度:作业调度:高级调度、宏观调度高级调度、宏观调度。主要功能是按。主要功能是按照某种调度原则,选取某些作业进入内存,为它照某种调度原则,选取某些作业进入内存,为它们分配必要的资源,建立相应的进程,并当作业们分配必要的资源
4、,建立相应的进程,并当作业完成后做好一切善后工作。完成后做好一切善后工作。v 进程调度:进程调度:低级调度、微观调度。主要功能是按低级调度、微观调度。主要功能是按照某种调度原则,实现处理器在各进程间的转换。照某种调度原则,实现处理器在各进程间的转换。第三章 操作系统处理器管理7 作业的四种状态:作业的四种状态:提交提交收容收容执行执行完成完成。提交提交收容收容完成完成去分配去分配作业管理作业管理设备管理设备管理辅存辅存执行执行内存内存作业的四种状态作业的四种状态第三章 操作系统处理器管理8 v提交状态:提交状态:用户向机房提交作业或通过终端键盘用户向机房提交作业或通过终端键盘将作业输入,其作业
5、所处的状态为提交状态。将作业输入,其作业所处的状态为提交状态。v收容状态:收容状态:作业的全部信息已经输入外存等待运作业的全部信息已经输入外存等待运行,又称为后备状态。行,又称为后备状态。v执行状态:执行状态:作业被作业调度程序选中进入内存,作业被作业调度程序选中进入内存,称为执行状态。称为执行状态。v完成状态:完成状态:作业执行完毕,释放其占用的全部资作业执行完毕,释放其占用的全部资源,准备退出系统。源,准备退出系统。第三章 操作系统处理器管理9 v 作业名:作业名:用户作业的名称。用户作业的名称。v 状态:状态:输入输入/收容收容/执行。执行。v 优先数:优先数:根据作业的重要程度,由系统
6、或用户确定。根据作业的重要程度,由系统或用户确定。v 运行时间:运行时间:估计完成本作业所需时间。估计完成本作业所需时间。v 位置:位置:本作业在外存中的起始地址。本作业在外存中的起始地址。v 长度:长度:作业的地址空间。作业的地址空间。v 外设申请:外设申请:作业运行时要求的外部设备作业运行时要求的外部设备。作业控制块(作业控制块(JCB-Job Control Block)第三章 操作系统处理器管理10 所有的所有的JCB可按作业的优先数大小或作业到达系统的时间顺可按作业的优先数大小或作业到达系统的时间顺序构成一个序构成一个作业队列作业队列,如下图所示,如下图所示作业名作业名现在状态现在状
7、态优先数优先数 时间估计时间估计位置位置长度长度外设申请外设申请指向下一个指向下一个JCB指针指针JCB1JCB2JCBn作业控制块与作业队列作业控制块与作业队列第三章 操作系统处理器管理11 v按照某种调度算法,从作业队列中按照某种调度算法,从作业队列中选取作业进入选取作业进入内存。内存。v调用存储管理和设备管理程序,为被选中的作业调用存储管理和设备管理程序,为被选中的作业分配内存和外设。分配内存和外设。v为选中的作业为选中的作业建立相应的进程。建立相应的进程。v作业运行完毕时回收该作业占用的资源,输出必作业运行完毕时回收该作业占用的资源,输出必要的信息,要的信息,撤消撤消该作业的该作业的J
8、CB与相应的进程与相应的进程。第三章 操作系统处理器管理12 v 先来先服务算法先来先服务算法:系统按作业录入的先后次序建成系统按作业录入的先后次序建成作业队列。作业队列。v 基于优先级的调度算法基于优先级的调度算法:作业的优先级可以由用户作业的优先级可以由用户在申请作业时根据作业的紧急程度制订一个优先数:在申请作业时根据作业的紧急程度制订一个优先数: 优先数优先数=(等待时间等待时间)2 (要求运行时间要求运行时间)(输出量)输出量) 基本思想:基本思想:既保证优先照顾各种短作业,但是也不既保证优先照顾各种短作业,但是也不致使长作业因等待过久而等不到运行机会。致使长作业因等待过久而等不到运行
9、机会。第三章 操作系统处理器管理13 v 分时和优先级结合的调度算法:分时和优先级结合的调度算法:用于具有用于具有分时分时操作操作的系统中,将后备作业按优先数分成几个的系统中,将后备作业按优先数分成几个队列,系统为每个队列分配一个相应的时间片,队列,系统为每个队列分配一个相应的时间片,从优先数高的队列中选择作业运行,当该作业从优先数高的队列中选择作业运行,当该作业时间片用完后,它回到比原先低一级的队列中。时间片用完后,它回到比原先低一级的队列中。第三章 操作系统处理器管理14 进程的三种基本状态:进程的三种基本状态:(1)就绪状态)就绪状态 :进程已具备各种必要的资源,只等待:进程已具备各种必
10、要的资源,只等待获得获得CPU。(2)运行状态)运行状态:系统根据调度算法,将:系统根据调度算法,将CPU分配给某分配给某一个就绪进程使之运行,该进程就处于运行状态。一个就绪进程使之运行,该进程就处于运行状态。当运行的进程由于分配的当运行的进程由于分配的CPU时间已到或是由于时间已到或是由于I/O要求,则必须交出要求,则必须交出CPU就转入就绪或阻塞状态。就转入就绪或阻塞状态。(3)阻塞状态)阻塞状态:等待:等待I/O设备或发生其它错误,就转入设备或发生其它错误,就转入阻塞状态。待到阻塞原因消除后,重新回到就绪状阻塞状态。待到阻塞原因消除后,重新回到就绪状态。态。第三章 操作系统处理器管理15
11、 进程控制块(进程控制块(PCBProcess Control Block) :(1)说明信息:)说明信息:包括进程名、优先数及当前状态。包括进程名、优先数及当前状态。(2)保留信息:)保留信息:是保留该进程由运行状态转入阻塞或就是保留该进程由运行状态转入阻塞或就绪状态时当时各寄存器的内容,以便当该进程重新绪状态时当时各寄存器的内容,以便当该进程重新进入运行时恢复当时各寄存器状况。进入运行时恢复当时各寄存器状况。第三章 操作系统处理器管理16进程各状态之间转换的示意图进程各状态之间转换的示意图进程名进程名优先数优先数当前状态当前状态寄存器内容寄存器内容指向下一指向下一个个PCB进程调度进程调度
12、就绪就绪运行运行阻塞阻塞作业管理作业管理完成完成I/O完成完成时间时间到到I/O要求要求说明信息说明信息保留信息保留信息第三章 操作系统处理器管理17 创建进程、撤消进程、改变进程创建进程、撤消进程、改变进程 在非结构系统中,进程控制按功能由操作系统在非结构系统中,进程控制按功能由操作系统内部完成,用户无法参与,这类系统中各进程是互内部完成,用户无法参与,这类系统中各进程是互相平等的。相平等的。 在在树型结构树型结构系统中,一个进程能够创系统中,一个进程能够创建一个或多个进程,前者称为建一个或多个进程,前者称为父进程父进程,后者称为,后者称为子子进程进程。这样就形成了一个进程家族。这样就形成了
13、一个进程家族。第三章 操作系统处理器管理18 进程的层次结构进程的层次结构P0P1P2P4P5P6P3P7第三章 操作系统处理器管理19 通过通过原语原语实现的。实现的。 原语:原语:是机器指令的延伸,由若干条机器是机器指令的延伸,由若干条机器指令构成,用以完成某一特定功能的程序指令构成,用以完成某一特定功能的程序段,又称为广义指令。段,又称为广义指令。第三章 操作系统处理器管理20 (1)创建原语:)创建原语:按调用者提供的参数,构成该进程的按调用者提供的参数,构成该进程的PCB.(2)挂起原语:)挂起原语:中断该进程的运行,把中断该进程的运行,把PCB中的状态中的状态置为阻塞状态。置为阻塞
14、状态。(3)激活原语:)激活原语:把某阻塞进程置为就绪状态,等待分把某阻塞进程置为就绪状态,等待分配配CPU。(4)撤消原语:)撤消原语:停止该进程的执行,释放它所占有的停止该进程的执行,释放它所占有的各种资源,删除该进程的各种资源,删除该进程的PCB。第三章 操作系统处理器管理21 (1)优先数法:)优先数法:把处理器分配给具有最高优先数的把处理器分配给具有最高优先数的进程。进程。(2)轮转调度法:)轮转调度法:按照规定的时间片将处理器轮流按照规定的时间片将处理器轮流分配给就绪队列中的进程。适用于多道批处理系分配给就绪队列中的进程。适用于多道批处理系统。统。(3)分级调度法:)分级调度法:是
15、上述两种算法的结合。是上述两种算法的结合。第三章 操作系统处理器管理22 (1)同步与互斥现象)同步与互斥现象 同步:同步:指进程之间的一种直接的协同工作关指进程之间的一种直接的协同工作关系。如果系统中有若干个进程要完成某一任务,系。如果系统中有若干个进程要完成某一任务,那么它们相互之间必须协调配合。那么它们相互之间必须协调配合。 互斥:互斥:是进程间的一种关系。当多个进程要求是进程间的一种关系。当多个进程要求共享系统中某些硬件或软件资源,而这些资源却共享系统中某些硬件或软件资源,而这些资源却又要求排它性适用时,往往引起由于多个进程竞又要求排它性适用时,往往引起由于多个进程竞争同一资源使运行结
16、果出现问题。争同一资源使运行结果出现问题。 第三章 操作系统处理器管理23 Count中只增加中只增加1例如:例如:有两个进程有两个进程P1,P2都对公共变量都对公共变量count作加作加1操作操作P1: R1-count;P2: R2-count;P1: R1-R1+1; count-R1;P2: R2-R2+1; count-R2;第三章 操作系统处理器管理24 (2) 解决进程同步与互斥的工具解决进程同步与互斥的工具 解决同步与互斥的工具有很多,可以由硬件或解决同步与互斥的工具有很多,可以由硬件或软件实现。例如:用软件实现。例如:用P-V操作操作解决。解决。第三章 操作系统处理器管理25 P 操作操作 P(s)s s-1若若 s 0, 继续执行该进程继续执行该进程若若 s 0, 继续执行该进程继续执行该进程若若 s 0, 则释放则释放s信号量队列中第一个等待者,改变其信号量队列中第一个等待者,改变其“阻塞阻塞”状态为状态为“就绪就绪”状态状态注意:每执行一次注意:每执行一次 V 操作,意味着释放一个资源操作,意味着释放一个资源第三章 操作系统处理器管理26 P1P(s)R1cou