第三章_处理机调度与锁.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《第三章_处理机调度与锁.ppt》由会员分享,可在线阅读,更多相关《第三章_处理机调度与锁.ppt(59页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 操作系统 第三章 处理机调度与死锁第三章 处理机调度与死锁3.1 处理机的分级调度3.2 作业调度3.3 进程调度3.4 死锁1 1 操作系统 第三章 处理机调度与死锁3.1 处理机的分级调度 处理机资源是计算机系统中最重要的资源,它的调度处理机资源是计算机系统中最重要的资源,它的调度策略,常常表示操作系统的某种特征,其算法的优劣直接策略,常常表示操作系统的某种特征,其算法的优劣直接影响整个系统的性能。影响整个系统的性能。处理机调度需要解决三个问题:处理机调度需要解决三个问题:(1)(1)处理机分配的策略,即需要确定处理机的调度算法;处理机分配的策略,即需要确定处理机的调度算法;(2)(2)
2、什么时候分配处理机,即需要确定处理机的调度时机;什么时候分配处理机,即需要确定处理机的调度时机;(3)(3)如何分配处理机,即需要给出处理机的调度过程。如何分配处理机,即需要给出处理机的调度过程。2 2 操作系统 第三章 处理机调度与死锁2 2)交换调度(中级调度)(均衡调度):)交换调度(中级调度)(均衡调度):按照给定的原则实现按照给定的原则实现进程进程在主存和外存交换区之间的在主存和外存交换区之间的换换进换出进换出,以解决内存紧张问题,特别是具有虚拟存储器的系,以解决内存紧张问题,特别是具有虚拟存储器的系统中。统中。3 3)进程调度(低级调度):)进程调度(低级调度):按按照照某某种种策
3、策略略从从进进程程就就绪绪队队列列中中选选择择一一个个就就绪绪进进程程,使其使其占有处理机占有处理机运行。运行。4 4)线程调度线程调度 处理机调度可以分为处理机调度可以分为4 4级:级:1 1)作业调度(高级调度):)作业调度(高级调度):按一定原则选择按一定原则选择若干个后备作业若干个后备作业调入主存调入主存,分配资源,分配资源,并建立相应的进程,投入运行。当该作业执行完毕时,还负并建立相应的进程,投入运行。当该作业执行完毕时,还负责回收资源。责回收资源。3 3 操作系统 第三章 处理机调度与死锁3.2 作业调度一、作业、作业步、作业流(1)(1)作业:作业:是用户一次请求计算机系统为它完
4、成任务所进是用户一次请求计算机系统为它完成任务所进 行的工作总和。行的工作总和。(2)(2)作业步:作业步:作业加工工作中的一个相对独立的步骤称为作作业加工工作中的一个相对独立的步骤称为作业步。业步。对作业的处理一般有这样几个作业步:对作业的处理一般有这样几个作业步:编辑(修改)、编译、连接、运行编辑(修改)、编译、连接、运行。(3)(3)作业流:作业流:是按一定顺序组织好的一批作业。是按一定顺序组织好的一批作业。4 4 操作系统 第三章 处理机调度与死锁作业步之间的关系:作业步之间的关系:每个作业步运行的结果产生下一个作业步所需要的文件。每个作业步运行的结果产生下一个作业步所需要的文件。一个
5、作业步能否正确地执行,依赖于前一个作业步是否一个作业步能否正确地执行,依赖于前一个作业步是否成功的完成。成功的完成。例如:例如:user.c user.obj user.exe 编辑编辑 编译编译 连接连接 运行运行 作业步之间的关系作业步之间的关系二、作业的类型根据计算机系统的作业处理方式不同,可以把作业分成两类:根据计算机系统的作业处理方式不同,可以把作业分成两类:脱机作业(批处理作业)脱机作业(批处理作业)联机作业(交互式作业或终端型作业)联机作业(交互式作业或终端型作业)。5 5 操作系统 第三章 处理机调度与死锁三、作业的组织 程序程序 作业由三部分组成作业由三部分组成 数据数据 作
6、业说明书作业说明书(说明用户的控制意图)(说明用户的控制意图)作业控制块作业控制块(JCBJCB):为了管理和调度已进入系统的各个作业为了管理和调度已进入系统的各个作业,系统设置的用于记录作业的基本情况的数据结构系统设置的用于记录作业的基本情况的数据结构。作业控制块作业控制块(JCBJCB)的主要内容的主要内容:(1)(1)作业的基本情况作业的基本情况 用户名、作业名、作业的状态和使用的语言用户名、作业名、作业的状态和使用的语言等。等。(2)(2)作业的控制要求作业的控制要求 控制方式控制方式、类型、优先数、操作顺序和出错处理等。、类型、优先数、操作顺序和出错处理等。(3)(3)作业的资源要求
7、作业的资源要求 作业建立的时间、要求运行的时间、最迟完成的时间、需作业建立的时间、要求运行的时间、最迟完成的时间、需要的主存容量、外设的种类及数量和资源使用情况。要的主存容量、外设的种类及数量和资源使用情况。6 6 操作系统 第三章 处理机调度与死锁 作业的输入作业的输入作业的建立包括两个子过程作业的建立包括两个子过程 作业控制块作业控制块(JCBJCB)的建立的建立作业的输入方式作业的输入方式:1.1.联机输入方式联机输入方式 2.2.脱机输入方式脱机输入方式(预输入方式预输入方式)3.3.直接耦合方式直接耦合方式 4.SPOOLING4.SPOOLING系统系统 5.5.网络输入方式网络输
8、入方式 JCBJCB(作业控制块)的建立作业控制块)的建立:系统在作业输入到系统在作业输入到外存外存,进入,进入后备状态后备状态时为作业建立时为作业建立 JCB JCB,它是作业存在的惟一标志它是作业存在的惟一标志.四、作业的建立7 7 操作系统 第三章 处理机调度与死锁 一个作业从提交给计算机系统到执行结束退出系统,一一个作业从提交给计算机系统到执行结束退出系统,一般都要经历般都要经历4 4个状态:个状态:提交、后备(收容)、执行和完成。提交、后备(收容)、执行和完成。1 1)提交状态:提交状态:通过终端设备向计算机的磁盘输入作业信息通过终端设备向计算机的磁盘输入作业信息时所处的状态。时所处
9、的状态。2 2)后备状态:后备状态:作业的全部信息已输入到磁盘的一个专用区作业的全部信息已输入到磁盘的一个专用区(输入井输入井)中等待作业调度时所处的状态。中等待作业调度时所处的状态。3 3)执行状态:执行状态:在后备作业队列中的作业一旦被作业调度程在后备作业队列中的作业一旦被作业调度程序选中,为它分配了必要的资源,并且建立了进程序选中,为它分配了必要的资源,并且建立了进程,开始开始处理时所处的状态。处理时所处的状态。4 4)完成状态:完成状态:作业完成其全部任务后,进程撤消作业完成其全部任务后,进程撤消,做善后做善后处理时的作业状态称为完成状态。处理时的作业状态称为完成状态。五、作业的状态8
10、 8 操作系统 第三章 处理机调度与死锁一、作业的状态及其转换 作业的状态及其转换作业的状态及其转换 执执行行 进程调度进程调度 内存内存 线程调度线程调度运运行行等等待待就就绪绪外存外存 就就绪绪等等待待提提交交后后备备完完成成作业输入作业输入 作业调度作业调度 交换调度交换调度 作业调度作业调度 执执行行9 9 操作系统 第三章 处理机调度与死锁二、作业调度的功能 作业调度的主要任务:作业调度的主要任务:完成作业从后备状态到运行状态和完成作业从后备状态到运行状态和从运行状态到完成状态的转变。从运行状态到完成状态的转变。1 1)记录系统中各作业的状况)记录系统中各作业的状况。作业调度程序应包
11、括以下功能:作业调度程序应包括以下功能:作业调度程序为了挑选一个作业投入运行,并且在运作业调度程序为了挑选一个作业投入运行,并且在运行中对它实施管理,它必须掌握该作业进入系统时的有关行中对它实施管理,它必须掌握该作业进入系统时的有关情况并随时记录该作业在各运行阶段的变化。为此,系统情况并随时记录该作业在各运行阶段的变化。为此,系统为每一个已进入系统的作业分配一个为每一个已进入系统的作业分配一个作业控制块作业控制块JCBJCB(Job(Job ContrlContrl block)block)。每个作业的每个作业的JCBJCB在该作业进入后备状态时在该作业进入后备状态时由系统建立在该作业退出系统
12、时由系统撤消。每个作业由系统建立在该作业退出系统时由系统撤消。每个作业在各阶段的情况在各阶段的情况(包括分配的资源和作业状态等包括分配的资源和作业状态等)都记录在都记录在它的它的JCBJCB中。中。1010 操作系统 第三章 处理机调度与死锁2)2)按一定的调度算法,从后备作业中挑选出一个或几个作按一定的调度算法,从后备作业中挑选出一个或几个作业运行。业运行。系统中处于后备状态的作业较多,几十个甚至几百个,系统中处于后备状态的作业较多,几十个甚至几百个,处于运行状态的作业只是有限的几个如最多不超过处于运行状态的作业只是有限的几个如最多不超过4 4个或个或8 8个。个。作业调度程序的一个重要职能
13、就是在适当的时候按一定的调作业调度程序的一个重要职能就是在适当的时候按一定的调度原则从后备作业中挑选出若干个作业投入运行。度原则从后备作业中挑选出若干个作业投入运行。3)3)为被选中的作业做好执行前的准备工作。为被选中的作业做好执行前的准备工作。为该作业建立相应的进程,并且为这些进程提供所需的为该作业建立相应的进程,并且为这些进程提供所需的资源,如内存和外部设备等。资源,如内存和外部设备等。4)4)在作业执行结束时做善后处理工作。在作业执行结束时做善后处理工作。输出如运行时间、作业执行情况等必要信息,回收该作输出如运行时间、作业执行情况等必要信息,回收该作业所占用的全部资源,撤消与该作业有关的
14、全部进程和该作业所占用的全部资源,撤消与该作业有关的全部进程和该作业的作业控制块。业的作业控制块。1111 操作系统 第三章 处理机调度与死锁注:注:1 1)处理机的分配工作由进程调度程序完成。内存的分配处理机的分配工作由进程调度程序完成。内存的分配和释放工作由存贮管理程序完成。外部设备的分配和释放和释放工作由存贮管理程序完成。外部设备的分配和释放工作由设备管理程序完成。工作由设备管理程序完成。三、作业控制块2 2)作业调度程序只保证被选中的作业获得使用处理机的作业调度程序只保证被选中的作业获得使用处理机的资格,把一个作业的内存、外设要求转给相应的管理程序。资格,把一个作业的内存、外设要求转给
15、相应的管理程序。作业控制块作业控制块JCBJCB是作业存在的标志,记录与该作业有关是作业存在的标志,记录与该作业有关的信息。的信息。1212 操作系统 第三章 处理机调度与死锁作业名作业名资源要求资源要求估计执行时间估计执行时间最迟完成时间最迟完成时间要求的主存量要求的主存量要求外设的类型及台数要求外设的类型及台数要求文件量和输出量要求文件量和输出量资源使用情况资源使用情况进入系统时间进入系统时间开始执行时间开始执行时间已已执行时间执行时间主存地址主存地址外设台号外设台号类型类型控制方式控制方式作业类型作业类型优先级优先级状态状态作业控制块作业控制块联机和脱机联机和脱机1313 操作系统 第三
16、章 处理机调度与死锁四、作业调度目标与性能衡量(1 1)公平性)公平性(2 2)均衡使用资源)均衡使用资源(3 3)较高的吞吐量)较高的吞吐量(4 4)较快的响应时间)较快的响应时间1.1.调度目标调度目标1414 操作系统 第三章 处理机调度与死锁(1 1)周转时间)周转时间T Ti i=完成时刻完成时刻TcTci i 提交时刻提交时刻TsTsi i =等待时间等待时间TwTwi i+运行时间运行时间 TrTri i对于进入系统的对于进入系统的n n个作业而言,个作业而言,平均周转时间平均周转时间T T为为i i1 1用于衡量不同调度算法对同一作业流的调度性能用于衡量不同调度算法对同一作业流
17、的调度性能:平均周转时间越小,该作业调度算法的性能越好。平均周转时间越小,该作业调度算法的性能越好。2.2.调度性能衡量指标调度性能衡量指标1515 操作系统 第三章 处理机调度与死锁(2)(2)带权周转时间带权周转时间WiWi=Ti=TiTriTri它能说明作业它能说明作业i i的相对等待时间。的相对等待时间。n n 平均带权周转时间平均带权周转时间W=W=(WiWi)n n i=1i=1用于衡量同一调度算法对不同作业流的调度性能:用于衡量同一调度算法对不同作业流的调度性能:平平均均带带权权周周转转时时间间越越小小,作作业业调调度度算算法法对对该该作作业业流流的的调调度度性能越好。性能越好。
18、对对于于批批处处理理系系统统,主主要要依依据据平平均均周周转转时时间间和和平平均均带带权权周周转转时时间间来来作作为为衡衡量量调调度度算算法法性性能能的的指指标标;而而对对于于分分时时系系统统和和实实时时系系统统,外外加加平平均均响响应应时时间间作作为为衡衡量量调调度度算算法性能的指标。法性能的指标。1616 操作系统 第三章 处理机调度与死锁五、作业调度算法 按作业来到的先后次序进行调度。这种算法优先考虑按作业来到的先后次序进行调度。这种算法优先考虑在系统中等待时间最长的作业,而不管它要求运行时间的在系统中等待时间最长的作业,而不管它要求运行时间的长短。长短。优点:优点:容易实现;容易实现;
19、缺点:缺点:没有考虑各个作业运行特征和资源要求的差异,系没有考虑各个作业运行特征和资源要求的差异,系统效率较低。统效率较低。1.1.先来先服务调度算法(先来先服务调度算法(FCFSFCFS)1717 操作系统 第三章 处理机调度与死锁例:先来先服务调度算法(单位:小时,并以十进制计)例:先来先服务调度算法(单位:小时,并以十进制计)作业作业提交时间提交时间运行时间运行时间开始时间开始时间完成时间完成时间周转时间周转时间带权带权周转时间周转时间 1 8.00 2.00 8.0010.00 2.00 1 2 8.50 0.5010.0010.50 2.00 4 3 9.00 0.1010.5010
20、.60 1.60 16 4 9.50 0.2010.6010.80 1.30 6.5平均周转时间平均周转时间T T1.7251.725平均带权周转时间平均带权周转时间W W6.8756.8751818 操作系统 第三章 处理机调度与死锁2.2.短作业优先调度算法(短作业优先调度算法(SJFSJF)此算法总是优先调度要求运行时间最短的作业。此算法总是优先调度要求运行时间最短的作业。优点:优点:易于实现,效率比较高。易于实现,效率比较高。缺点:缺点:只照顾短作业而不考虑长作业的利益。只照顾短作业而不考虑长作业的利益。如果系统不断地接受新的短作业。则有可能较长作业如果系统不断地接受新的短作业。则有可
21、能较长作业长时间等待而不能运行。长时间等待而不能运行。1919 操作系统 第三章 处理机调度与死锁例:短作业优先调度算法(单位:小时,并以十进制计)例:短作业优先调度算法(单位:小时,并以十进制计)作业作业提交时间提交时间运行时间运行时间开始时间开始时间完成时间完成时间周转时间周转时间带权带权周转时间周转时间 1 8.00 2.00 8.0010.00 2.00 1 2 8.50 0.5010.3010.80 2.30 4.6 3 9.00 0.1010.0010.10 1.10 11 4 9.50 0.2010.1010.30 0.80 4平均周转时间平均周转时间T T1.551.55平均带
22、权周转时间平均带权周转时间W W5.155.152020 操作系统 第三章 处理机调度与死锁3.3.响应比高者优先调度算法响应比高者优先调度算法 响应比是指作业的响应时间与作业估计运行时间的比响应比是指作业的响应时间与作业估计运行时间的比值。值。选择原则是优先选取响应比值最大的作业。即兼顾等选择原则是优先选取响应比值最大的作业。即兼顾等待时间长和运行时间短的作业,它是待时间长和运行时间短的作业,它是FCFSFCFS和和SJFSJF算法的结合。算法的结合。响应比响应比1 1作业等待时间作业等待时间/执行时间执行时间2121 操作系统 第三章 处理机调度与死锁 作业作业提交时间提交时间运行时间运行
23、时间开始时间开始时间完成时间完成时间周转时间周转时间带权带权周转时间周转时间 1 8.00 2.00 8.0010.00 2.00 1 2 8.50 0.5010.1010.60 2.10 4.2 3 9.00 0.1010.0010.10 1.10 11 4 9.50 0.2010.6010.80 1.30 6.5例:响应比高者优先调度算法(单位:小时,并以十进制计例:响应比高者优先调度算法(单位:小时,并以十进制计)平均周转时间平均周转时间T T1.6251.625,平均带权周转时间平均带权周转时间W W5.6755.675 响应比响应比1 1作业等待时间作业等待时间/执行时间执行时间例如
24、:当作业例如:当作业3 3结束时,结束时,Rp2=1Rp2=1作业等待时间作业等待时间/可执行时间可执行时间=1+(10.10-8.50)/0.5=1+3.2=1+(10.10-8.50)/0.5=1+3.2Rp4=1Rp4=1作业等待时间作业等待时间/可执行时间可执行时间=1+(10.10-9.50)/0.2=1+3=1+(10.10-9.50)/0.2=1+32222 操作系统 第三章 处理机调度与死锁 这种算法是根据确定的优先数来选取作业,每次总是选这种算法是根据确定的优先数来选取作业,每次总是选择优先级最高的作业。择优先级最高的作业。4.4.最高优先级优先调度算法最高优先级优先调度算法
25、规定用户作业优先数的方法规定用户作业优先数的方法:1 1)由用户自己提出作业的优先数。)由用户自己提出作业的优先数。有的用户为了自己的作业有的用户为了自己的作业尽快被系统选中就设法提高自己作业的优先数,这时系统可以尽快被系统选中就设法提高自己作业的优先数,这时系统可以规定优先数越高则需付出的计算机使用费就越多,以作限制。规定优先数越高则需付出的计算机使用费就越多,以作限制。2 2)由系统综合有关因素来确定用户作业的优先数。)由系统综合有关因素来确定用户作业的优先数。例如,根据作业的缓急程度、作业计算时间的长短、等待例如,根据作业的缓急程度、作业计算时间的长短、等待时间的多少、资源申请情况等来确
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三 处理机 调度
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内