ch2-2.7处理器调度.ppt

上传人:s****8 文档编号:67222592 上传时间:2022-12-24 格式:PPT 页数:49 大小:588.50KB
返回 下载 相关 举报
ch2-2.7处理器调度.ppt_第1页
第1页 / 共49页
ch2-2.7处理器调度.ppt_第2页
第2页 / 共49页
点击查看更多>>
资源描述

《ch2-2.7处理器调度.ppt》由会员分享,可在线阅读,更多相关《ch2-2.7处理器调度.ppt(49页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、LOGO第二章第二章 处理器管理处理器管理v调度是系统将计算机资源分配给进程。v在单道程序环境下,没有资源竞争问题。在多道程序环境下,多个进程并发运行,各进程之间存在资源的相互竞争,特别是对处理器资源的竞争,从而影响到系统性能。v处理器调度指在多道程序环境下将处理器分配给各进程。在处理器调度中,合理的调度算法能够提高处理器的处理能力和系统性能,满足用户需求。2.7 2.7 处理器调度处理器调度v在多道程序环境下,进程的数目往往多于处理器的数目,多个进程共享处理器资源就必然引起对处理机的竞争。如需要考虑:按照何种原则挑选批处理作业进入主存?能否继续接纳分时用户?如何在多进程之间分配处理器?等等2

2、.7 2.7 处理器调度处理器调度2.7 2.7 处理器调度处理器调度2.7.1 作业和进程的关系2.7.2 作业的管理与调度2.7.3 处理机调度的层次2.7.4 选择调度算法的原则2.7.1 作业和进程的关系作业和进程的关系v作业:作业由一组统一管理和操作的进程集合构成,是用户要求计算机系统完成的一项相对独立的工作。v分类:按需要处理工作的类型分计算型作业和I/O型作业;按作业处理方式的不同分为批处理作业和终端型作业(交互型作业)v在多道程序环境下,用户的批处理作业被提交到系统的磁盘上,以批处理后备队列的形式进行组织,这样的作业为批处理作业。批处理作业需要作业调度将后备队列上的作业调度到内

3、存才能执行。v对终端型作业用户通过终端登录到系统,直接将作业置于内存中。终端型作业不需要作业调度便能执行。2.7.1 作业和进程的关系作业和进程的关系v进程:已提交完毕并选中运行的作业(程序)的执行实体,也是为完成作业任务向系统申请和分配资源的基本单位。v作业得到调度后必须为其生成相应的用户进程才能真正执行完成计算任务v一个作业往往由多个父子关系的进程并发完成2.7.1 作业和进程的关系作业和进程的关系v因此:作业是任务实体,进程是完成任务的作业是任务实体,进程是完成任务的执行实体执行实体;没有作业任务,进程无事可没有作业任务,进程无事可干,没有进程,作业任务没法完成。干,没有进程,作业任务没

4、法完成。作业概念更多地用在批处理操作系统,作业概念更多地用在批处理操作系统,而进程则可以用在各种多道程序设计而进程则可以用在各种多道程序设计系统。系统。2.7.1 作业和进程的关系作业和进程的关系由用户创建由用户指定由系统创建2.7.1 作业和进程的关系作业和进程的关系批处理作业的相关概念批处理作业的相关概念1、作业:用户在一次计算过程中,或者一次事务处理过程中,要求计算机系统所做工作的总称2、作业步:一个作业可划分成若干部分,称为一个作业步。典型的作业控制过程:“编译”、“连接装配”、“运行”2.7.2 作业的管理与调度作业的管理与调度3、作业控制语言:用户用于描述批处理作业处理过程控制意图

5、的一种特殊程序 书写作业说明书的语言称为作业控制语言(JCL)4、作业说明书:表达用户对作业的控制意图内容,如作业的基本描述,作业控制描述,资源要求描述 作业=程序+数据+作业说明书2.7.2 作业的管理与调度作业的管理与调度5、作业控制块(JCB)n作业控制块是批处理作业存在的标志n保存有系统对于作业进行管理所需要的全部信息n位于磁盘区域中nJCB和作业一一对应2.7.2 作业的管理与调度作业的管理与调度(1)JCB的建立v当作业开始由输入设备向磁盘的输入井传输时系统输入程序为其建立一个作业控制块进行初始化v初始化的大部分信息取自作业说明书2.7.2 作业的管理与调度作业的管理与调度(2)J

6、CB的使用需要访问作业控制块的程序v系统输入程序v作业调度程序v作业控制程序v系统输出程序等2.7.2 作业的管理与调度作业的管理与调度(3)JCB的撤消v作业完成后,其作业控制块由系统输出程序撤消,作业控制块被撤消后其作业也不复存在2.7.2 作业的管理与调度作业的管理与调度(4)作业表每个作业有个作业控制块v所有作业JCB构成一个作业表v作业表存放在外存固定区域中,长度是固定v限制了系统所能同时容纳的作业数量注意:系统输入程序、作业调度程序、系统输出程序都需要访问作业表,因而存在互斥问题2.7.2 作业的管理与调度作业的管理与调度批处理作业的组织和管理批处理作业的组织和管理v批处理作业的输

7、入(输入井)将作业程序、数据和作业说明书从输入设备(例如键盘)输入到外存,并形成初始信息典型作业输入方式SPOOLing系统v批处理作业的建立(JCB)v批处理作业的调度2.7.2 作业的管理与调度作业的管理与调度批处理作业的调度批处理作业的调度v作业调度按照某种调度算法从输入井的后备作业队列中选取作业,使其进入内存运行。选择作业分配资源创建进程作业控制后续处理v作业调度程序的主要功能是审查系统是否能满足用户作业的资源要求以及按照一定的算法选取作业。批处理作业的状态批处理作业的状态 作业从提交给系统直到它完成后离开系统前的整个活动过程,可分为提交状态、后备状态、执行状态、完成状态v提交状态:用

8、户将作业提交给操作系统,等待输入程序和数据到磁盘。v 后备状态:系统接收输入的用户作业,并将其放入计算机磁盘。作业在磁盘上以后备队列形式进行组织,等待作业调度程序将它调度到内存。批处理作业的状态批处理作业的状态v执行状态作业被调度到内存,为作业分配资源并为其创建与之对应的进程,进程获得CPU,开始运行。v完成状态从作业的第一个进程完成开始,直到作业所有的进程完成,释放作业所占用的资源,退出系统的整个进程。批处理作业状态及其转换批处理作业状态及其转换进程调度进程调度运运行行就就绪绪等等待待输输入入状状态态后后备备状状态态完完成成状状态态预输预输入完入完成成作业控制作业控制作业调度作业调度(选选中

9、并创建进程中并创建进程)作业调度作业调度(作作业终止并撤离业终止并撤离)SPOOLingSPOOLing作业预输作业预输入入SPOOLingSPOOLing作业缓输作业缓输出出交互型作业(终端型作业)交互型作业(终端型作业)v为每个终端创建一个终端进程,接受用户的输入,执行命令解释程序,并把结果返回给用户 等待键盘中断,申请中断;CPU响应中断,将控制权交给命令解释程序 创建子进程,执行命令处理文件代码 处理结束,再次输出命令提示符v命令解释程序的作用和JCL解释程序类似2.7.2 作业的管理与调度作业的管理与调度v交互型作业就是用户的一次上机交互过程,可认为终端进程的创建是一个交互型作业的开

10、始,退出命令运行结束代表用户交互型作业的中止。例如分时操作系统v交互作业的情况和资源需求通过操作命令告知系统,分时用户逐条输入命令,即提交作业(步)和控制作业运行,系统则逐条执行并给出应答,每键入一条或一组有关操作命令,便在系统内部创建一个进程或若干进程来完成相应命令。2.7.2 作业的管理与调度作业的管理与调度总结总结v批处理作业需要作业调度,特别是在批处理操作系统中v在分时操作系统和实时操作系统中,终端用户的作业直接送入到内存,不需要作业调度。操作系统需要完成的功能是决定是否能够为作业创建进程。v分时操作系统和实时操作系统也支持批处理作业,在批处理作业存在时,也能够完成作业调度。v在多道程

11、序环境下,进程的数目往往多于处理器的数目,多个进程共享处理器资源就必然引起对处理机的竞争。如需要考虑:what:按照何种原则挑选批处理作业进入主存?(调度算法)when:能否继续接纳分时用户?(调度的时机)how:如何在多进程之间分配处理器?(调度过程)2.7.3 2.7.3 处理机调度的层次处理机调度的层次2.7.3 2.7.3 处理机调度的层次处理机调度的层次作业从进入系统成为后备作业开始,直到运行结束退出系统为止,需经历不同级别的调度。不同的OS所采取的调度方式不尽相同,一般来说可分为3个层次的调度:高级调度:批处理OS必须配置,纯粹的分时或实时OS中,通常无须配置。中级调度:较完善的O

12、S中,引入其来改善内存的利用率和提高作业的吞吐量。低级调度:最基本。各类0S必须具有的功能。v高级调度(作业调度、长程调度、宏观调度)按一定原则对外存输入井上的大量后备作业进行选择调入内存,并为它们创建进程、分配必要的资源,再将新创建的进程排在就绪队列上,准备执行。v 一般在批处理系统中有作业调度。2.7.3 2.7.3 处理机调度的层次处理机调度的层次高级调度高级调度v执行作业调度时应做出以下2个决定:接纳多少个作业?接纳哪些作业?取决于多道程序度。取决于所采用的调度算法,如先来先服务调度算法、短作业优先调度算法、最高响应比法等。2.7.3 2.7.3 处理机调度的层次处理机调度的层次中级调

13、度中级调度v又称平衡负载调度,中程调度v决定主存储器中所能容纳的进程数,这些进程将允许参与竞争处理器资源v中级调度根据存储资源量和进程的当前状态来决定辅存和主存中进程的对换2.7.3 2.7.3 处理机调度的层次处理机调度的层次v中级调度决定哪些进程被允许参与竞争处理器资源,方法是:将那些暂时不能运行的进程从主存调到外存(仍然保持进程状态)上的特定区域,这些在外存存放的进程所处的状态称为挂起状态。当这些进程的运行条件具备,且主存又有空闲时,在中级调度的控制下,再将处于外存上的那些重新具备运行条件的挂起进程调入主存,并将其状态修改为就绪状态,放入就绪队列,等待进程调度。2.7.3 2.7.3 处

14、理机调度的层次处理机调度的层次v引入中级调度的目的是为了提高内存的利用率和系统吞吐量v管理进程在内外存间的交换,从存储器资源管理的角度来看,把进程的部分或全部换出到外存上,可为当前运行进程的执行提供所需内存空间。2.7.3 2.7.3 处理机调度的层次处理机调度的层次v低级调度(进程/线程调度、短程调度、微观调度)用来决定就绪队列中的哪个进程(线程)应获得处理机,再由分派程序执行把处理机分配给该进程(线程)的具体操作。v低级调度是由每秒可操作许多次的处理机调度程序执行,处理机调度程序应常驻内存。2.7.3 2.7.3 处理机调度的层次处理机调度的层次低级调度低级调度v进程调度的方式:非抢占方式

15、(非剥夺式):指当一个进程被分配占用CPU后,就可以不被打断执行到结束。如:先进先出。抢占方式(剥夺式):指当一个进程被分配占用CPU的过程中出现了更高级的进程请求时,当前进程必须让出CPU。抢占原则:1 时间片原则;2优先级原则;3 短进程优先原则。2.7.3 2.7.3 处理机调度的层次处理机调度的层次处理器调度的层次处理器调度的层次 中级调度中级调度新建态新建态挂起就绪态挂起就绪态挂起等待态挂起等待态高级调度高级调度低级调度低级调度运行态运行态就绪态就绪态等待态等待态终止态终止态处理器调度与进程状态转换 高级高级调度调度中级调度中级调度低级低级调度调度运行态运行态就绪态就绪态终止态终止态

16、新建态新建态挂起就绪挂起就绪态态中级中级调度调度挂起等待挂起等待态态等待态等待态高级调度高级调度高级调度高级调度中级中级调度调度调度模型调度模型v注意:并不是每个操作系统都有三级调度,其中低级调度是每种操作系统必备的v按照层次,处理器调度模型可分为:三级调度模型(高,中,低)两级调度模型(高,低)一级调度模型(低)处理器三级调度模型低级调度低级调度高级调度高级调度完成完成超时超时挂起就绪队列挂起就绪队列挂起等待队列挂起等待队列等待队列等待队列就绪队列就绪队列等待事件等待事件交互式用户交互式用户事件事件出现出现后备作业队列后备作业队列中级调度中级调度处理器两级调度模型等待事件等待事件事件发生事件

17、发生进程完成进程完成后备后备作业作业队列队列 就绪就绪 队列队列高级调度高级调度低级调度低级调度 等待等待 队列队列CPUCPU时间片完时间片完适用于批处理操作系统适用于批处理操作系统处理器一级调度模型2.7.4 选择调度算法的原则调度算法的目标v单位时间内运行尽可能多的作业v使处理机尽可能保持“忙碌”v使各种I/O设备得以充分利用v对所有的作业都是公平合理的调度算法需要考虑的因素v要设计一个理想的调度算法是一件十分困难的事,在实际系统中,调度算法往往折衷考虑,设计调度算法时应考虑的因素:调度算法应与系统设计目标保持一致 注意系统资源均衡使用 保证提交的作业在截止时间内完成 设法缩短作业平均周

18、转时间v大多数操作系统都采用比较简单的调度算法2.7.4 选择调度算法的原则评价调度算法的性能指标v面向系统的:1、资源利用率 2、吞吐率 3、公平性v面向用户的:4、响应时间 5、周转时间 2.7.4 选择调度算法的原则2.7.4 选择调度算法的原则 l、资源利用率 CPU利用率=CPU有效工作时间/CPU总的运行时间。CPU总的运行时间=CPU有效工作时间+CPU空闲等待时间。2、吞吐率 单位时间内处理的作业数。处理的长作业多,吞吐率低 处理的短作业多,吞吐率高 3、公平性 确保每个用户每个进程获得合理的CPU份额或其他资源份额,不会出现饿死情况。2.7.4 选择调度算法的原则 4、响应时

19、间 交互式进程从提交一个请求(命令)到接收到响应之间的时间间隔称响应时间。使交互式用户的响应时间尽可能短,或尽快处理实时任务。这是分时系统和实时系统衡量调度性能的一个重要指标。2.7.4 选择调度算法的原则 5、周转时间 批处理用户从作业提交给系统开始,到作业完成为止的时间间隔称作业周转时间。这是批处理系统衡量调度性能的一个重要指标。调度性能指标重点看:平均作业周转时间和平均带权作业周转时间 2.7.4 选择调度算法的原则 作业周转与平均周转时间如果作业i提交给系统的时刻是ts,完成时刻是tf,该作业的周转时间ti为:ti=tf-ts 实际上,它是作业在系统里的等待时间与运行时间之和。为了提高系统的性能,要让若干个用户的平均作业周转时间和平均带权周转时间最小。平均作业周转时间 T=(ti)/n作业带权周转时间和平均作业带权周转时间如果作业i的周转时间为ti,所需运行时间为tk,则称wi=ti/tk为该作业的带权周转时间。ti是等待时间与运行时间之和,故带权周转时间总大于1。平均作业带权周转时间W=(wi)/n注意:为了提高系统的性能,要让若干个用户的平均作业周转时间和平均带权周转时间最小。平均作业周转时间T:衡量不同调度算法对同一个作业流的性能 平均作业带权周转时间W:同一调度算法对不同作业流的性能衡量2.7.4 选择调度算法的原则

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

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com