处理机调度与死锁汇总课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《处理机调度与死锁汇总课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 处理机 调度 死锁 汇总 课件
- 资源描述:
-
1、Yanshan University第三章 处理机调度与死锁 第三章第三章 处理机调度与死锁处理机调度与死锁 本章主要理解进程调度和死锁的基本概念,熟悉进程调度的各种算法及适用范围,了解产生死锁的原因和必要条件,掌握如何预防、避免、检测、解除死锁的各种方法,特别是银行家算法。重、难点:进程调度算法 产生死锁的原因和必要条件 银行家算法Yanshan University第三章 处理机调度与死锁 第三章第三章 处理机调度与死锁处理机调度与死锁 3.1 3.1 处理机调度的基本概念处理机调度的基本概念 3.2 3.2 调度算法调度算法 3.3 3.3 实时调度实时调度 3.4 3.4 多处理机系统
2、中的调度多处理机系统中的调度 3.5 3.5 产生死锁的原因和必要条件产生死锁的原因和必要条件 3.6 3.6 预防死锁的方法预防死锁的方法 3.7 3.7 死锁的检测与解除死锁的检测与解除 Yanshan University第三章 处理机调度与死锁 3.1 处理机调度的基本概念 要解决的问题要解决的问题WHAT:按什么原则分配按什么原则分配CPU 进程调度算法进程调度算法WHEN:何时分配何时分配CPU 进程调度的时机进程调度的时机HOW:如何分配如何分配CPU CPU调度过程调度过程 (进程的上下文切换)(进程的上下文切换)CPU调度的目的:分配CPU。CPU调度方式:一级调度或二级调度
3、。调度算法有:FCFS、SPF(SJF)、时间片轮转、优先权高者优先、多级反馈队列等不同的调度算法。Yanshan University第三章 处理机调度与死锁 进程调度的分类有:按调度层次,分为高级调度高级调度中级调度中级调度低级调度低级调度按OS的类型,分为批处理调度批处理调度分时调度分时调度实时调度实时调度多处理机调度多处理机调度Yanshan University第三章 处理机调度与死锁 3.1.1 高级、中级和低级调度 一、高级调度一、高级调度(又称为作业调度、长程调度又称为作业调度、长程调度/High Scheduling):其原因是因为分时系统中,为了能及时响应用其原因是因为分时
4、系统中,为了能及时响应用户请求,用户通过键盘输入的命令或数据等,都是户请求,用户通过键盘输入的命令或数据等,都是直接送入内存,因而无需配置作业,而在批处理系直接送入内存,因而无需配置作业,而在批处理系统中,作业进入系统时先是驻留在外存上,然后根统中,作业进入系统时先是驻留在外存上,然后根据需要才调入内存,因此需要作业调度。据需要才调入内存,因此需要作业调度。为什么在分为什么在分(实实)时系统中不配置高级调度?时系统中不配置高级调度?在每次执行作业调度时,都需要做:在每次执行作业调度时,都需要做:1.接纳多少个作业接纳多少个作业 2.接纳哪些作业接纳哪些作业Yanshan University第
5、三章 处理机调度与死锁 二、低级调度二、低级调度(又称进程调度、短程调度又称进程调度、短程调度/Low Level Scheduling):执行分配处理机的程序称为执行分配处理机的程序称为进程调度程序进程调度程序(分(分派程序)派程序)进程调度是操作系统中进程调度是操作系统中最基本的调度最基本的调度,在批处,在批处理系统及分时系统、实时系统中都必须配置它。理系统及分时系统、实时系统中都必须配置它。Yanshan University第三章 处理机调度与死锁 进程调度有以下两种基本方式:进程调度有以下两种基本方式:1.非抢占方式:非抢占方式:这种调度方式的这种调度方式的优点优点是:简单、系统开销
6、小,是:简单、系统开销小,貌似公正。貌似公正。这种调度方式的这种调度方式的缺点缺点是:可能导致系统性能的是:可能导致系统性能的恶化。表现为:恶化。表现为:(1)一个紧急任务到达时,不能立即投入运行,一个紧急任务到达时,不能立即投入运行,以致延误时机;以致延误时机;(2)若干个后到的短作业,须等待长作业运行完若干个后到的短作业,须等待长作业运行完毕才能运行,致使短作业的周转时间增长。这对短毕才能运行,致使短作业的周转时间增长。这对短作业用户来说是不公平的。作业用户来说是不公平的。Yanshan University第三章 处理机调度与死锁 2.抢占方式:方式:剥夺原则有剥夺原则有:(1)优先权原
7、则:优先权原则:优先权高的进程可以剥夺优优先权高的进程可以剥夺优先权低的进程的运行;先权低的进程的运行;(2)短作业(进程)优先原则:短作业(进程)优先原则:短进程到达后短进程到达后可以剥夺长进程的运行;可以剥夺长进程的运行;(3)时间片原则:时间片原则:一个时间片用完后进程重新一个时间片用完后进程重新调度。调度。Yanshan University第三章 处理机调度与死锁 三、中级调度三、中级调度(中程调度中程调度/Intermediate-Level Scheduling):中级调度中级调度实际上就是存储器管理的对换。它实际上就是存储器管理的对换。它决定哪些进程被允许参与竞争处理机资源。中
8、级调度主要只是起到短期调整系统负荷的作用,以平顺系统的操作。其所使用的方法是通过“挂起”和“激活”一些进程,来达到平顺系统操作的目的。Yanshan University第三章 处理机调度与死锁 3.1.2 调度队列模型 一、仅有进程调度的调度队列模型一、仅有进程调度的调度队列模型 在分时系统中通常只设置进程调度。在分时系统中通常只设置进程调度。处于就绪队列中的进程在依次执行时,可能会发生以下三种情况:处于就绪队列中的进程在依次执行时,可能会发生以下三种情况:(1)进程未用完一个时间片便结束,这时系统应提前调度;进程未用完一个时间片便结束,这时系统应提前调度;(2)进程在执行过程中提出进程在执
9、行过程中提出I/O请求而阻塞,系统应将它放入请求而阻塞,系统应将它放入 阻塞队列并引起调度;阻塞队列并引起调度;(3)进程用完一个时间片后尚未完成,系统应将它放入就绪队进程用完一个时间片后尚未完成,系统应将它放入就绪队 列的末尾,等待下次执行。列的末尾,等待下次执行。图 3-1 仅具有进程调度的调度队列模型 交互用户交互用户 进程调度进程调度 endend 事件出现事件出现就绪队列I/O阻塞队列I/OCPU等待事件等待事件时间片完时间片完Yanshan University第三章 处理机调度与死锁 二、具有进程调度和作业调度的调度队列模型二、具有进程调度和作业调度的调度队列模型作业后备队列作业
10、后备队列 进程调度进程调度 endend 就绪队列CPU事件事件1 1出现出现I/O阻塞队列1I/O等待事件等待事件1 1时间片完时间片完作业调度作业调度事件事件2 2出现出现I/O阻塞队列2I/O等待事件等待事件2 2事件事件n n出现出现I/O阻塞队列nI/O等待事件等待事件n n区别:区别:(1)在在OS中不仅引入进程调度之后,而且还引入了作中不仅引入进程调度之后,而且还引入了作业调度。业调度。(2)在在OS中设置了多个阻塞队列。每一阻塞队列对应一中设置了多个阻塞队列。每一阻塞队列对应一种引起进程阻塞的事件。种引起进程阻塞的事件。Yanshan University第三章 处理机调度与死
11、锁 三、同时具有三级调度的调度队列模型三、同时具有三级调度的调度队列模型RUNreadyablockedareadysblokeds后备完成作业后备状态执行内存时间片到I/O请求I/O完成高级调度(作业调度)挂起激活挂起激活进程调度低级调度中级调度Yanshan University第三章 处理机调度与死锁 3.1.3 选择调度方式和调度算法的若干准则 一、面向用户的准则一、面向用户的准则 1.周转时间短:周转时间短:是批处理系统中衡量性能的一个是批处理系统中衡量性能的一个重要指标。主要有两个具体指标:重要指标。主要有两个具体指标:(1)作业周转时间:作业周转时间:指一个作业从提交开始到完成指
12、一个作业从提交开始到完成为止的这段时间间隔。它等于下列四个部分之和。为止的这段时间间隔。它等于下列四个部分之和。作业从外存后备队列上等待进入内存的时间;作业从外存后备队列上等待进入内存的时间;在就绪队列上等待获得处理机的时间;在就绪队列上等待获得处理机的时间;在在CPU上的执行时间;上的执行时间;等待等待I/O操作完成的时间。操作完成的时间。(2)进程周转时间:进程周转时间:是指一个进程从第一次进入就是指一个进程从第一次进入就绪队列开始到进程运行完毕所经历的时间。它等于作绪队列开始到进程运行完毕所经历的时间。它等于作业周转时间中的后三部分之和。业周转时间中的后三部分之和。Yanshan Uni
13、versity第三章 处理机调度与死锁 作业的平均周转时间作业的平均周转时间或作业的平均带权周转时间作业的平均带权周转时间 前者用来衡量不同调度算法对同一作业流的调度性能,后者用来比较某一调度算法对不同作业流的调度性能。它们定义如下:作业平均周转时间:T=1/n(Ti)i=1n其中:n被测定作业流中的作业数 Ti作业 i 的周转时间:Ti=Tci-Tsi Tsi 作业 i 的提交时间 Tci 作业 i 的完成时间 作业平均带权周转时间:W=1/n(Wi)=1/n(Ti/tRi)其中:tRi作业 i 的实际执行时间i=1ni=1nYanshan University第三章 处理机调度与死锁 2.
14、响应时间快:响应时间快:它是分时系统中衡量性能的一个它是分时系统中衡量性能的一个重要指标。是指从提交一个请求开始到首次产生响重要指标。是指从提交一个请求开始到首次产生响应为止应为止(显示出结果显示出结果)的一段时间间隔。它等于下列的一段时间间隔。它等于下列三部分之和:三部分之和:(1)把请求信号从键盘传输到计算机的时间;把请求信号从键盘传输到计算机的时间;(2)计算机对请求进行处理的时间;计算机对请求进行处理的时间;(3)再将响应送回终端的时间。再将响应送回终端的时间。3.截止时间的保证:截止时间的保证:它是实时系统中衡量性能的它是实时系统中衡量性能的一个重要指标。是指某任务必须从开始执行的最
15、近一个重要指标。是指某任务必须从开始执行的最近时间,或必须完成的最迟时间。时间,或必须完成的最迟时间。4.优先权准则:优先权准则:它是紧急作业得到及时处理的重它是紧急作业得到及时处理的重要保证。要保证。Yanshan University第三章 处理机调度与死锁 二、面向系统的准则二、面向系统的准则 1.系统吞吐量大:系统吞吐量大:是用于评价批处理系统的重是用于评价批处理系统的重要指标,因而它是选择批处理系统的重要准则。要指标,因而它是选择批处理系统的重要准则。2.处理机利用率高:处理机利用率高:是大、中型计算机系统选是大、中型计算机系统选择调度算法的重要依据。但对单用户或实时系统,择调度算法
16、的重要依据。但对单用户或实时系统,它不是十分重要的准则了。它不是十分重要的准则了。3.各类资源的平衡利用:各类资源的平衡利用:也是大、中型计算机也是大、中型计算机系统选择调度算法的重要依据。对单用户或实时系系统选择调度算法的重要依据。对单用户或实时系统,它不是十分重要的准则了。统,它不是十分重要的准则了。Yanshan University第三章 处理机调度与死锁 3.2 调 度 算 法 3.2.1 先来先服务和短作业(进程)优先调度算法 1.先来先服务调度算法(先来先服务调度算法(FCFS)该算法总是把处理机分配给最先进入就绪队列该算法总是把处理机分配给最先进入就绪队列的进程,即:就绪队列按
17、进入的先后顺序排队的进程,即:就绪队列按进入的先后顺序排队。属于不可抢占策略属于不可抢占策略 优点优点:实现简单实现简单 缺点缺点:没考虑进程的优先级没考虑进程的优先级 此算法是此算法是有利于长有利于长(大大)作业作业(进程进程),不利于短,不利于短(小小)作业作业(进程进程);有利于;有利于CPU繁忙的作业繁忙的作业(进程进程),不,不利于利于I/O繁忙的作业繁忙的作业(进程进程)。Yanshan University第三章 处理机调度与死锁 作业提交时间运行时间开始时间完成时间周转时间带权周转时间ts(时)tR(时)tB(时)tC(时)ti(时)Wi(Z)12348.008.509.009
18、.502.000.500.100.208.0010.0010.5010.6010.0010.5010.6010.802.002.001.601.306.901.004.0016.006.5027.50平均周转时间 T=6.90/4=1.725(小时)平均带权时间 W=27.5/4=6.875FCFS算法实例算法实例Yanshan University第三章 处理机调度与死锁 2.短作业短作业(进程进程)优先调度算法(优先调度算法(SJF/SPF)是指对短作业或短进程优先调度短作业或短进程优先调度的算法。短作业优先(SJF)的调度算法,是从后备队列中选择一个或若干个估计运行时间最短的作业,将它们
19、调入内存运行。短进程优先(SPF)调度算法,则是从就绪队列中选出一估计运行时间最短的进程,将处理机分配给它,使它立即执行并一直执行到完成,或发生某事件而被阻塞放弃处理机时,再重新调度。属于不可抢占策略属于不可抢占策略Yanshan University第三章 处理机调度与死锁 优点:优点:该算法相对该算法相对FCFS来说调度性能要好些,来说调度性能要好些,且能满足大多数作业且能满足大多数作业(均是短作业均是短作业)用户的要求。用户的要求。缺点:缺点:该算法对长作业不利。该算法对长作业不利。该算法未考虑作业的紧迫程度,因而不能保证该算法未考虑作业的紧迫程度,因而不能保证紧迫性作业(进程紧迫性作业
20、(进程)及时得到处理。)及时得到处理。该算法不一定能真正做到短作业优先调度。该算法不一定能真正做到短作业优先调度。计算下一个CPU执行期的预测公式如下:tn:第第n个实际的个实际的CPU执行期执行期 n:第第n个实际的个实际的CPU执行期预测值执行期预测值:用于控制最近的用于控制最近的tn和和其预测值其预测值 n n+1=tn+(1-)nYanshan University第三章 处理机调度与死锁 作业提交时间运行时间开始时间完成时间周转时间带权周转时间ts(时)tR(时)tB(时)tC(时)ti(时)Wi(Z)12348.008.509.009.502.000.500.100.20SJF算法
21、实例算法实例8.0010.3010.0010.1010.0010.8010.1010.302.002.301.100.806.201.004.6011.004.0020.60平均周转时间 T=6.20/4=1.55(小时)平均带权时间 W=20.6/4=5.15优:比FCFS,T W 缺:有的作业可能始终得不到运行Yanshan University第三章 处理机调度与死锁 3.2.2 高优先权优先调度算法 一、优先权调度算法的类型一、优先权调度算法的类型 基本原理基本原理是:是:对于进程调度,对于进程调度,它总是把处理它总是把处理机分配给就绪队列中具有最高优先权的进程机分配给就绪队列中具有最
22、高优先权的进程;对对于作业调度,于作业调度,它总选择后备队列中若干具有高优它总选择后备队列中若干具有高优先权的作业进入内存先权的作业进入内存。优先级调度算法又可分为:优先级调度算法又可分为:非抢占的优先级调度法非抢占的优先级调度法 可抢占的优先级调度法可抢占的优先级调度法Yanshan University第三章 处理机调度与死锁 1.静态优先权:静态优先权:静态优先权是在创建进程时确定的,在整静态优先权是在创建进程时确定的,在整个运行期间不再发生改变。个运行期间不再发生改变。确定静态优先权的依据有:确定静态优先权的依据有:(1)进程类型进程类型 (2)进程对资源的需求进程对资源的需求 (3)
23、用户要求的优先权用户要求的优先权。静态优先权简单易行,系统开销小,但不精确。静态优先权简单易行,系统开销小,但不精确。2.动态优先权:动态优先权:动态优先权是基于某种原则,使进程的优动态优先权是基于某种原则,使进程的优先权随时间而改变。先权随时间而改变。二、优先权的类型二、优先权的类型Yanshan University第三章 处理机调度与死锁 三、三、高响应比优先调度算法高响应比优先调度算法 响应比响应比Rp定义如下:定义如下:Rp=作业响应时间作业响应时间tR/要求执行的时间要求执行的时间 作业响应时间作业响应时间tR=作业进入系统后等待时间作业进入系统后等待时间+要求执行要求执行的时间的
24、时间 Rp=1+(作业等待时间作业等待时间tW/要求执行的时间要求执行的时间)HRN原理:原理:就是在每调度一个作业投入运行时,先计就是在每调度一个作业投入运行时,先计算后备作业队列中每个作业的响应比,然后挑选响应比最算后备作业队列中每个作业的响应比,然后挑选响应比最高者投入运行。高者投入运行。优点:优点:该算法既照顾了短作业用户,同时也避免了长该算法既照顾了短作业用户,同时也避免了长作业用户无限期的等待,是作业用户无限期的等待,是 FCFS 和和 SJ(P)F 两种算法的较两种算法的较好折衷方案。好折衷方案。缺点:缺点:算法较为复杂,增加了系统开销算法较为复杂,增加了系统开销(计算响应比计算
25、响应比)。Yanshan University第三章 处理机调度与死锁 作业提交时间运行时间开始时间完成时间周转时间带权周转时间ts(时)tR(时)tB(时)tC(时)ti(时)Wi(Z)12348.008.509.009.502.000.500.100.20HRN算法实例算法实例8.0010.1010.0010.6010.0010.6010.1010.802.002.101.101.306.501.004.2011.006.5022.70平均周转时间 T=6.50/4=1.625(小时)平均带权时间 W=22.7/4=5.675Yanshan University第三章 处理机调度与死锁 3
展开阅读全文