




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Operating SystemOperating SystemPage 12022-2-21Operating SystemOperating SystemPage 22022-2-21q重点重点v掌握掌握进程调度进程调度算法,各适用于何种情况算法,各适用于何种情况 v理解常用的几种理解常用的几种实时调度实时调度算法算法 v理解产生理解产生死锁死锁的原因的原因 v掌握掌握银行家算法银行家算法避免避免死锁死锁q难点难点v多道程序设计中的各种调度算法多道程序设计中的各种调度算法 v响应比高者优先调度算法的计算过程响应比高者优先调度算法的计算过程 v银行家算法银行家算法 Operating Sys
2、temOperating SystemPage 32022-2-21q知识点知识点v处理机调度及调度算法处理机调度及调度算法v多处理机环境下的进程(线程)调度方式多处理机环境下的进程(线程)调度方式v产生死锁的原因和必要条件产生死锁的原因和必要条件v预防死锁的方法,死锁的检测与解除预防死锁的方法,死锁的检测与解除 v银行家算法银行家算法Operating SystemOperating SystemPage 42022-2-21 处理机调度部分以是操作系统对CPU的管理,这部分要求考生理解作业和进程的关系,掌握作业调度和进程调度的策略和算法,重点要掌握几种典型的调度算法的基本思想、适用的范围和
3、特点,要能指出各种调度算法的调度顺序并能计算它们的周转时间;最后一定要弄清楚什么是死锁产生的必要条件以及如何预防和避免死锁。Operating SystemOperating SystemPage 52022-2-21q处理机是计算机系统中的处理机是计算机系统中的重要资源重要资源q在多道程序环境下,进程数目通常在多道程序环境下,进程数目通常多于处多于处理机的数目理机的数目q系统必须按一定方法系统必须按一定方法动态地动态地把处理机把处理机分配分配给给就绪队列中的一个进程就绪队列中的一个进程q处理机处理机利用率和系统性能利用率和系统性能(吞吐量、响应(吞吐量、响应时间)在很大程度上时间)在很大程度
4、上取决于取决于处理机处理机调度调度分配处理机的任务是由进程调度程序完成分配处理机的任务是由进程调度程序完成的。它是操作系统设计的中心问题之一。的。它是操作系统设计的中心问题之一。WHAT:按什么原则分配:按什么原则分配CPU进程调度算法进程调度算法WHEN:何时分配:何时分配CPU 进程调度的时机进程调度的时机 HOW:如何分配:如何分配CPU CPU调度过程(进程调度过程(进程的上下文切换)的上下文切换)Operating SystemOperating SystemPage 62022-2-21q 处理机调度的基本概念处理机调度的基本概念 q 调度算法调度算法 q 实时调度实时调度 q 多
5、处理机系统中的调度多处理机系统中的调度q 产生死锁的原因和必要条件产生死锁的原因和必要条件 q 预防死锁的方法预防死锁的方法 q 死锁的检测与解除死锁的检测与解除Operating SystemOperating SystemPage 72022-2-21q高级、中级和低级调度高级、中级和低级调度q进程调度的任务进程调度的任务q确定算法的原则确定算法的原则q进程调度方式进程调度方式q调度队列模型调度队列模型q选择调度方式和调度算法的若干准则选择调度方式和调度算法的若干准则Operating SystemOperating SystemPage 82022-2-21q作业作业是用户在一次解题或一
6、个事务处理过是用户在一次解题或一个事务处理过程中程中要求计算机系统所做工作的集合要求计算机系统所做工作的集合,包,包括用户程序、所需的数据及命令等括用户程序、所需的数据及命令等q作业的状态:作业的状态:一个作业进入系统到运行结一个作业进入系统到运行结束,一般需要经历收容、运行、完成三个束,一般需要经历收容、运行、完成三个阶段,与之相对应的是作业的三种状态阶段,与之相对应的是作业的三种状态v后备状态后备状态v运行状态运行状态v完成状态完成状态Operating SystemOperating SystemPage 92022-2-21运行状态运行状态后备状态后备状态完成状态完成状态就绪就绪阻塞阻
7、塞执行执行I/O完成完成I/O请求请求时间片完时间片完作业作业注册注册作业作业调度调度进程进程调度调度终止终止作业作业q作业作业状态间转换状态间转换Operating SystemOperating SystemPage 102022-2-213.1 处理机调度的基本概念处理机调度的基本概念 3.1.1 高级、中级和低级调度高级、中级和低级调度 1. 高级调度高级调度(High Scheduling) 2. 低级调度低级调度(Low Level Scheduling) 3. 中级调度中级调度(Intermediate-Level Scheduling) Operating SystemOper
8、ating SystemPage 112022-2-21q高级调度高级调度(High Scheduling)(High Scheduling) 作业调度作业调度或或长程调度(长程调度(Long-Term Long-Term SchedulingScheduling)v主要任务是按一定的原则对外存上处于后备主要任务是按一定的原则对外存上处于后备状态的作业进行选择,给选中的作业状态的作业进行选择,给选中的作业分配分配内内存、输入存、输入/ /输出设备等输出设备等必要的资源必要的资源,并,并建立建立相相应的应的进程进程,放入放入就绪就绪队列队列,以使该作业的进,以使该作业的进程获得竞争处理机的权利程
9、获得竞争处理机的权利v也称为也称为接纳调度(接纳调度(Admission SchedulingAdmission Scheduling)v高级调度的时间尺度通常是分钟、小时或天高级调度的时间尺度通常是分钟、小时或天Operating SystemOperating SystemPage 122022-2-21在每次作业调度时,须决定:在每次作业调度时,须决定:v接纳多少个作业接纳多少个作业 即允许多少个作业同时在内存中运行,取决于即允许多少个作业同时在内存中运行,取决于多多 道程序度道程序度(Degree of Multiprogramming)作业太多作业太多 服务质量下降服务质量下降作业太
10、少作业太少 资源利用率低资源利用率低v接纳哪些作业接纳哪些作业 取决于作业调度算法取决于作业调度算法先来先服务先来先服务短作业优先短作业优先作业优先权调度作业优先权调度响应比调度响应比调度周转时间太长系统吞吐量太低 适当的折衷:即允许多少个作业同时在内存中运行。:即允许多少个作业同时在内存中运行。:从作业被提交给系统开始,到作业完成为:从作业被提交给系统开始,到作业完成为止的这段时间间隔。止的这段时间间隔。:是指在单位时间内系统所完成的作业数。:是指在单位时间内系统所完成的作业数。Operating SystemOperating SystemPage 132022-2-21q 低级调度低级调
11、度 进程调度进程调度或或短程调度短程调度(Short-Term Scheduling)v主要任务是按照某种主要任务是按照某种策略和方法策略和方法选取选取一个处于一个处于就绪就绪状态的进程,将处理机状态的进程,将处理机分配分配给它给它v常见的低级调度有常见的低级调度有非抢占式非抢占式和和抢占式抢占式两种两种v低级调度的时间尺度通常是低级调度的时间尺度通常是毫秒级毫秒级的。的。由于低级调度算法的由于低级调度算法的频繁使用频繁使用,要求,要求在实现时做到在实现时做到高效。高效。Operating SystemOperating SystemPage 142022-2-21q 高级、中级和低级调度高级
12、、中级和低级调度q 进程调度的任务进程调度的任务q 确定算法的原则确定算法的原则q 进程调度方式进程调度方式q 调度队列模型调度队列模型q 选择调度方式和调度算法的若干准则选择调度方式和调度算法的若干准则Operating SystemOperating SystemPage 152022-2-21q 进程调度的任务进程调度的任务是是控制、协调进程控制、协调进程对对CPUCPU的竞争的竞争, ,即按即按一定的调度算法从就绪队列中选中一一定的调度算法从就绪队列中选中一个进程,把个进程,把CPUCPU的使用权交给被选中的的使用权交给被选中的进程。进程。Operating SystemOperati
13、ng SystemPage 162022-2-21q 高级、中级和低级调度高级、中级和低级调度q 进程调度的任务进程调度的任务q 确定算法的原则确定算法的原则q 进程调度方式进程调度方式q 调度队列模型调度队列模型q 选择调度方式和调度算法的若干准则选择调度方式和调度算法的若干准则Operating SystemOperating SystemPage 172022-2-21q 具有具有公平性公平性q 资源资源利用率高利用率高(特别是(特别是CPUCPU利用率)利用率)q 在交互式系统情况下要追求在交互式系统情况下要追求响应时间响应时间(越短越好)(越短越好)q 在批处理系统情况下要追求系统在
14、批处理系统情况下要追求系统吞吐量吞吐量Operating SystemOperating SystemPage 182022-2-21q 高级、中级和低级调度高级、中级和低级调度q 进程调度的任务进程调度的任务q 确定算法的原则确定算法的原则q 进程调度方式进程调度方式q 调度队列模型调度队列模型q 选择调度方式和调度算法的若干准则选择调度方式和调度算法的若干准则Operating SystemOperating SystemPage 192022-2-21q 非抢占方式非抢占方式(Non-preemptive Mode)(Non-preemptive Mode)q 抢占方式抢占方式(Pree
15、mptive Mode)(Preemptive Mode)Operating SystemOperating SystemPage 202022-2-21q 非抢占方式非抢占方式(Non-preemptive Mode)(Non-preemptive Mode) 当某一进程正在处理机上执行时,即使有某个更当某一进程正在处理机上执行时,即使有某个更为重要或紧迫的进程进入就绪队列,该进程仍继为重要或紧迫的进程进入就绪队列,该进程仍继续执行,直到其完成或发生某种事件而进入完成续执行,直到其完成或发生某种事件而进入完成或阻塞状态时,才把处理机分配给更为重要或紧或阻塞状态时,才把处理机分配给更为重要或紧
16、迫的进程迫的进程v引起进程调度的因素引起进程调度的因素正在执行的进程执行完毕,正在执行的进程执行完毕, 或因发生某事或因发生某事件而不能再继续执行件而不能再继续执行执行中的进程因提出执行中的进程因提出I/OI/O请求而暂停执行;请求而暂停执行;在进程通信或同步过程中执行了某种原语在进程通信或同步过程中执行了某种原语操作,如操作,如waitwait、BlockBlock、WakeupWakeup原语原语优点优点:算法简单,:算法简单,系统开销小系统开销小缺点缺点:紧急任务不:紧急任务不能及时响应;短进能及时响应;短进程到达要等待长进程到达要等待长进程运行结束程运行结束Operating Syst
17、emOperating SystemPage 212022-2-21q 抢占方式抢占方式(Preemptive Mode)(Preemptive Mode) 当某一进程正在处理机上执行时,若有某个更为当某一进程正在处理机上执行时,若有某个更为重要或紧迫的进程进入就绪队列,则立即暂停重要或紧迫的进程进入就绪队列,则立即暂停正在执行的进程,将处理机分配给这个更为重正在执行的进程,将处理机分配给这个更为重要或紧迫的进程要或紧迫的进程抢占式调度主要有以下原则抢占式调度主要有以下原则优先权原则优先权原则 允许高优先权的新到进程抢允许高优先权的新到进程抢占当前进程的处理机占当前进程的处理机短作业短作业(
18、(进程进程) )优先原则优先原则允许执行时间短允许执行时间短的新到进程抢占当前进程的处理机的新到进程抢占当前进程的处理机 时间片原则时间片原则 时间片用完后停止执行,时间片用完后停止执行,重新进行调度,适用于分时系统重新进行调度,适用于分时系统 优点优点:适于时间要:适于时间要求严格的实时系统求严格的实时系统缺点缺点:调度算法复:调度算法复杂,系统开销大杂,系统开销大Operating SystemOperating SystemPage 222022-2-21q 中级调度中级调度(Intermediate-Level Scheduling)(Intermediate-Level Schedu
19、ling) 中程调度中程调度(Medium-Term Scheduling)(Medium-Term Scheduling)v引入目的引入目的是为了提高是为了提高内存利用率内存利用率和和系统吞吐量。系统吞吐量。使那些暂时不能运行的进程不再占用宝贵的内使那些暂时不能运行的进程不再占用宝贵的内存资源,而将它们调至外存上去等待。存资源,而将它们调至外存上去等待。v主要任务主要任务是按照给定的是按照给定的原则和策略原则和策略,将处于外,将处于外存存对换区对换区中的重又具备运行条件的就绪进程中的重又具备运行条件的就绪进程调调入内存入内存,或将处于内存就绪状态或内存阻塞状,或将处于内存就绪状态或内存阻塞状
20、态的进程态的进程交换到外存交换到外存对换区。对换区。Operating SystemOperating SystemPage 232022-2-21q 高级、中级和低级调度高级、中级和低级调度q 进程调度的任务进程调度的任务q 确定算法的原则确定算法的原则q 进程调度方式进程调度方式q 调度队列模型调度队列模型q 选择调度方式和调度算法的若干准则选择调度方式和调度算法的若干准则Operating SystemOperating SystemPage 242022-2-21q 仅有进程调度的调度队列模型仅有进程调度的调度队列模型q 具有高级和低级调度的调度队列模型具有高级和低级调度的调度队列模型
21、q 同时具有三级调度的调度队列模型同时具有三级调度的调度队列模型Operating SystemOperating SystemPage 252022-2-21q 仅有进程调度的调度队列模型仅有进程调度的调度队列模型v在分时系统中,通常仅设有进程调度在分时系统中,通常仅设有进程调度v系统把这些进程组织成一个系统把这些进程组织成一个就绪队列就绪队列v每个进程在执行时,可能有以下几种情况每个进程在执行时,可能有以下几种情况进程获得进程获得CPUCPU正在执行。正在执行。任务在给定时间片内任务在给定时间片内已完成已完成,释放处理机后,释放处理机后为完成状态。为完成状态。任务在时间片内任务在时间片内未
22、完成未完成,进入就绪队列末尾。,进入就绪队列末尾。在执行期间因某事件而阻塞。在执行期间因某事件而阻塞。Operating SystemOperating SystemPage 262022-2-21q仅有进程调度的调度队列模型仅有进程调度的调度队列模型就就 绪绪队队 列列阻阻 塞塞队队列列进程调度进程调度CPU进程完成进程完成等待事件等待事件交互用户交互用户事事件件出出现现时间片完时间片完Operating SystemOperating SystemPage 272022-2-21q 具有高级和低级调度的调度队列模型具有高级和低级调度的调度队列模型v在批处理系统中,不仅需要在批处理系统中,不
23、仅需要进程调度进程调度,而且还,而且还要有要有作业调度作业调度v就绪队列的形式就绪队列的形式在批处理系统中,常用高优先权队列。进程在批处理系统中,常用高优先权队列。进程进入就绪队列时,按优先权高低插入相应位进入就绪队列时,按优先权高低插入相应位置,调度程序总是把处理机分配给就绪队首置,调度程序总是把处理机分配给就绪队首进程。进程。v设置多个阻塞队列设置多个阻塞队列根据事件的不同设置多个队列提高效率。根据事件的不同设置多个队列提高效率。Operating SystemOperating SystemPage 282022-2-21进程调度进程调度CPU进程完成进程完成时间片完时间片完就就 绪绪队
24、队列列12等待事件等待事件等待事件等待事件等待事件等待事件n12n事件事件 出现出现事件事件 出现出现事件事件 出现出现后后备备 队队列列作业作业调度调度与上一模型的主要区别:就绪队列的形式;与上一模型的主要区别:就绪队列的形式; 设置多个阻塞队列设置多个阻塞队列阻阻队队列列塞塞2 2阻阻队队列列塞塞n n阻阻队队列列塞塞1 1Operating SystemOperating SystemPage 292022-2-21q同时具有三级调度的调度队列模型同时具有三级调度的调度队列模型就绪队列就绪队列进程调度进程调度就绪,挂起队列就绪,挂起队列中级调度中级调度阻塞,挂起队列阻塞,挂起队列阻塞队列
25、阻塞队列等待事件等待事件进程完成进程完成时间片完时间片完作业调度作业调度交互型作业交互型作业后备队列后备队列批量作业批量作业挂起挂起挂起挂起事事件件出出现现事件出现事件出现CPUOperating SystemOperating SystemPage 302022-2-21q 高级、中级和低级调度高级、中级和低级调度q 进程调度的任务进程调度的任务q 确定算法的原则确定算法的原则q 进程调度方式进程调度方式q 调度队列模型调度队列模型q选择调度方式和调度算法的若干准则选择调度方式和调度算法的若干准则如果你是用户,你希望系统如何为你服务,如何考虑?如果你是用户,你希望系统如何为你服务,如何考虑?
26、如果你是调度者,从系统整体角度出发,应如何考虑?如果你是调度者,从系统整体角度出发,应如何考虑?Operating SystemOperating SystemPage 312022-2-213.1.3 选择调度方式和调度算法的若干准则选择调度方式和调度算法的若干准则 1. 面向用户的准则面向用户的准则 2. 面向系统的准则面向系统的准则 Operating SystemOperating SystemPage 322022-2-21q 面向用户的准则面向用户的准则v周转时间短周转时间短平均周转时间平均周转时间niiTnT11niSiiTTnW11带权周转时间:带权周转时间:进程(或作业)的进
27、程(或作业)的周转时周转时间间T T与系统为它与系统为它提供服务的时间提供服务的时间T TS S之比,即之比,即W=T/TW=T/TS S 。而。而平均带权周转时间平均带权周转时间则可表示为则可表示为: : Operating SystemOperating Systemq设有4个作业同时到达,每个作业的执行时间均为2个小时,它们在一台处理机上按单道方式执行,则平均周转时间为( ) (西安电子科技大学2000)qA 1小时, B 5小时qC 2.5小时 D 8小时Operating SystemOperating SystemPage 342022-2-21q面向用户的准则面向用户的准则v响应
28、时间快响应时间快响应时间响应时间是指从用户通过键盘提交一个请求是指从用户通过键盘提交一个请求开始,直至系统中开始,直至系统中首次首次产生产生响应响应为止的时间为止的时间交互式系统用周转时间衡量不是最佳交互式系统用周转时间衡量不是最佳v截止时间保证截止时间保证截止时间截止时间是指某任务必须开始执行的最迟时是指某任务必须开始执行的最迟时间或必须完成的最迟时间间或必须完成的最迟时间截止时间是截止时间是实时系统实时系统中的重要指标中的重要指标Operating SystemOperating SystemPage 352022-2-21q面向用户的准则面向用户的准则v 周转时间短周转时间短v 响应时间
29、快响应时间快v 截止时间保证截止时间保证批处理系统批处理系统分时系统分时系统实时系统实时系统等待时间短等待时间短优先权优先权Operating SystemOperating SystemPage 362022-2-21q面向用户的准则面向用户的准则v等待时间短等待时间短等待时间等待时间是在就绪队列中等待所花的时间是在就绪队列中等待所花的时间调度算法并不影响进程运行和执行调度算法并不影响进程运行和执行I/O的时的时间量;只影响进程在就绪队列中等待所花费间量;只影响进程在就绪队列中等待所花费的时间的时间v优先权准则优先权准则在在批处理批处理、实时实时和和分时系统分时系统中都可以选择优中都可以选择
30、优先权准则,以便让紧急任务先处理先权准则,以便让紧急任务先处理有时还选择抢占式调度方式有时还选择抢占式调度方式Operating SystemOperating SystemPage 372022-2-21q面向系统的准则面向系统的准则v系统吞吐量高系统吞吐量高吞吐量吞吐量指单位时间内系统所完成的作业数指单位时间内系统所完成的作业数作业调度的方式和算法对吞吐量的大小有较作业调度的方式和算法对吞吐量的大小有较大影响大影响v处理机利用率高处理机利用率高v各类资源的平衡利用各类资源的平衡利用使内存、外存和使内存、外存和I/OI/O设备的利用率高设备的利用率高基于这样的准则,你设计操作系统的调度策略应
31、如何?基于这样的准则,你设计操作系统的调度策略应如何?Operating SystemOperating SystemPage 382022-2-21q处理机调度的基本概念处理机调度的基本概念 q调度算法调度算法 q实时调度实时调度 q多处理机系统中的调度多处理机系统中的调度q产生死锁的原因和必要条件产生死锁的原因和必要条件 q预防死锁的方法预防死锁的方法 q死锁的检测与解除死锁的检测与解除Operating SystemOperating SystemPage 392022-2-21q在在OS中中调度的实质是一种资源分配调度的实质是一种资源分配,因而,因而调度算法是指:根据系统的资源分配策略
32、调度算法是指:根据系统的资源分配策略所规定的资源分配算法所规定的资源分配算法q问题提出问题提出q如何制定分配策略:对不同的系统和系统如何制定分配策略:对不同的系统和系统目标,通常采用不同的算法,如短作业优目标,通常采用不同的算法,如短作业优先,时间片轮转等先,时间片轮转等q有些算法适用于作业调度,有些适用于进有些算法适用于作业调度,有些适用于进程调度,有些两者皆可程调度,有些两者皆可Operating SystemOperating SystemPage 402022-2-21q 先来先服务和短作业优先算法先来先服务和短作业优先算法q 高优先权优先调度算法高优先权优先调度算法q 基于时间片的轮
33、转调度算法基于时间片的轮转调度算法Operating SystemOperating SystemPage 412022-2-21q 先来先服务先来先服务(FCFS)/先进先出先进先出(FIFO)调度算法调度算法v按照作业按照作业/进程进入系统的进程进入系统的先后次序先后次序进行调度,进行调度,先进入系统者先调度;即启动等待时间最长先进入系统者先调度;即启动等待时间最长的作业的作业/进程进程v是一种最简单的调度算法,即可用于是一种最简单的调度算法,即可用于作业调作业调度度,也可用于,也可用于进程调度进程调度q 几个术语几个术语v到达时间、服务时间、开始时间到达时间、服务时间、开始时间v完成时间
34、、等待时间完成时间、等待时间v周转时间:完成时间周转时间:完成时间-到达时间到达时间v带权周转时间:周转时间带权周转时间:周转时间/服务时间服务时间Operating SystemOperating SystemPage 422022-2-21进程名进程名到达时间到达时间 服务时间服务时间 开始时间开始时间 完成时间完成时间 周转时间周转时间带权周带权周转时间转时间平均平均04A13B25C32D44E044476先来先服务(先进先出):先来先服务(先进先出):712101214111418141225.53.592.8A A A A B B B C C C C C D D E E E E05
35、101518tOperating SystemOperating SystemPage 432022-2-21q 先来先服务先来先服务(先进先出)(先进先出)优缺点优缺点v 比较有利于比较有利于长作业(进程)长作业(进程),而不利于,而不利于短作业短作业(进程)(进程)v 有利于有利于CPU繁忙型作业(进程)繁忙型作业(进程) ,而不利于,而不利于I/O繁忙型作业(进程)繁忙型作业(进程)v 用于批处理系统,不适于分时系统用于批处理系统,不适于分时系统Operating SystemOperating SystemPage 442022-2-21q短作业短作业( (进程进程) )优先调度算法优
36、先调度算法SJ(P)FSJ(P)Fv短作业短作业( (进程进程) )优先调度算法优先调度算法SJ(P)FSJ(P)F,以要求,以要求运运行时间长短行时间长短进行调度,即启动要求运行时间最进行调度,即启动要求运行时间最短的作业。短的作业。v可以分别用于可以分别用于作业调度作业调度和和进程调度进程调度v短作业优先短作业优先(SJF)(SJF)的调度算法,是从后备队列的调度算法,是从后备队列中选择一个或若干个中选择一个或若干个估计运行时间估计运行时间最短的作业,最短的作业,将它们调入内存运行;而短进程优先将它们调入内存运行;而短进程优先(SPF)(SPF)调调度算法,则是从就绪队列中选出一度算法,则
37、是从就绪队列中选出一估计运行时估计运行时间间最短的进程,将处理机分配给它,使它立即最短的进程,将处理机分配给它,使它立即执行并一直执行到完成执行并一直执行到完成,或,或发生某事件发生某事件而被阻而被阻塞放弃处理机时,再重新调度。塞放弃处理机时,再重新调度。Operating SystemOperating SystemPage 452022-2-21进程名进程名到达时间到达时间 服务时间服务时间 开始时间开始时间 完成时间完成时间 周转时间周转时间带权周带权周转时间转时间平均平均04A13B25C32D44E0441短作业短作业/短进程优先(短进程优先(SJF/SPF):):4633/2698
38、8/391399/413181616/540/52.1A A A AB B BC C C C CD DE E E E05101518tOperating SystemOperating SystemPage 462022-2-21qFCFS/SJF调度算法的性能调度算法的性能SJFSJF能有效地降低作业的平均等待时间,提高系统吞吐量能有效地降低作业的平均等待时间,提高系统吞吐量 作业作业调度调度 情况情况 算法算法进程名进程名ABCDE平均平均到达时间到达时间01234服务时间服务时间43524FCFS完成时间完成时间47121418周转时间周转时间461011149带权周转时间带权周转时间1
39、225.53.52.8SJF完成时间完成时间4918613周转时间周转时间4816398带权周转时间带权周转时间12.673.11.52.252.1SJFSJF平均周转平均周转时间和平均带时间和平均带权周转时间明权周转时间明显改善显改善Operating SystemOperating SystemPage 472022-2-21qSJ(P)F调度算法也存在不容忽视的缺点调度算法也存在不容忽视的缺点v对对长作业不利长作业不利。严重的是,若一长作业。严重的是,若一长作业(进程进程)进进入系统的后备队列入系统的后备队列(就绪队列就绪队列),由于调度程序总,由于调度程序总是优先调度那些是优先调度那些
40、(即使是后进来的即使是后进来的)短作业短作业(进程进程),将导致长作业将导致长作业(进程进程)长期不被调度长期不被调度饥饿饥饿v完全未考虑作业完全未考虑作业(进程进程)的的紧迫程度紧迫程度,因而不能保,因而不能保证证紧迫性紧迫性作业作业(进程进程)会被会被及时处理及时处理v由于作业由于作业(进程进程)的长短只是根据的长短只是根据用户用户所提供的所提供的估估计执行时间计执行时间而定的,而用户又可能会而定的,而用户又可能会有意或无意有意或无意地地缩短缩短其作业的估计其作业的估计运行时间运行时间,致使该算法不一,致使该算法不一定能真正做到短作业优先调度。定能真正做到短作业优先调度。Operating
41、 SystemOperating SystemPage 482022-2-21某系统采用短作业优先的调度策略,现有作业序列:某系统采用短作业优先的调度策略,现有作业序列:作业作业1(提交时间:(提交时间:8.00,运行时间运行时间1.50),作业),作业2(提交时间:(提交时间:8.30,运行时间运行时间0.80)作业)作业3(提交时间:(提交时间:9.00,运行时间运行时间0.10),作业),作业4(提交时间:(提交时间:9.30,运运行时间行时间0.30),单位:小时,以十进制计。其平均带),单位:小时,以十进制计。其平均带权周转时间为:(权周转时间为:( )A 4.65 B 3.00C
42、5.52 D 12.23Operating SystemOperating SystemPage 492022-2-21q先来先服务和短作业优先算法先来先服务和短作业优先算法q高优先权优先调度算法高优先权优先调度算法q基于时间片的轮转调度算法基于时间片的轮转调度算法Operating SystemOperating SystemPage 502022-2-21q优先权调度算法的类型优先权调度算法的类型v非抢占式非抢占式优先权调度算法优先权调度算法v抢占式抢占式优先权调度算法优先权调度算法Operating SystemOperating SystemPage 512022-2-21q优先权调度
43、算法的类型优先权调度算法的类型v非抢占式非抢占式优先权调度算法优先权调度算法特点:系统一旦把处理机分配给就绪队列特点:系统一旦把处理机分配给就绪队列中中优先权最高优先权最高的进程后,该进程便的进程后,该进程便一直执一直执行行下去,直至完成,或因发生某事件使该下去,直至完成,或因发生某事件使该进程放弃处理机时,系统才将处理机重新进程放弃处理机时,系统才将处理机重新分配给另一优先权最高的进程。分配给另一优先权最高的进程。主要主要用于批处理系统用于批处理系统中,也可用于某些对中,也可用于某些对实时性实时性要求不严的实时系统要求不严的实时系统中。中。Operating SystemOperating
44、SystemPage 522022-2-21q优先权调度算法的类型优先权调度算法的类型v抢占式抢占式优先权调度算法优先权调度算法把处理机分配给优先权最高的进程,但在执行把处理机分配给优先权最高的进程,但在执行期间,只要出现另一个优先权更高的进程,则期间,只要出现另一个优先权更高的进程,则进程调度程序就进程调度程序就立即停止立即停止当前进程的执行,并当前进程的执行,并将处理机分配给新到的优先权最高的进程。将处理机分配给新到的优先权最高的进程。注意注意:只要只要系统中系统中出现出现一个新的就绪进程,一个新的就绪进程,就就进行进行优先权优先权比较。比较。该调度算法,能更好地该调度算法,能更好地满足紧
45、迫作业满足紧迫作业的要求,的要求,故而常用于要求比较严格的实时系统中,以及故而常用于要求比较严格的实时系统中,以及对性能要求较高的批处理和分时系统中。对性能要求较高的批处理和分时系统中。Operating SystemOperating SystemPage 532022-2-21q优先权的类型优先权的类型v静态优先权静态优先权v动态优先权动态优先权Operating SystemOperating SystemPage 542022-2-21q优先权的类型优先权的类型v静态优先权静态优先权静态优先权在创建进程时确定,且在进程的整个静态优先权在创建进程时确定,且在进程的整个运行期间运行期间保持
46、不变保持不变。一般地,优先权是利用某一。一般地,优先权是利用某一范围内的一个整数来表示的,例如,范围内的一个整数来表示的,例如,0 0 7 7或或0 0 255255, 又把该整数称为又把该整数称为优先数。优先数。v确定进程静态优先权的依据确定进程静态优先权的依据进程类型进程类型: :系统进程,用户进程系统进程,用户进程进程对资源的需求进程对资源的需求用户要求用户要求Operating SystemOperating SystemPage 552022-2-21确定进程优先权的依据有如下三个方面:进程类型。进程类型。系统进程的优先权高于一般用户进程。 (2) 进程对资源的需求。进程对资源的需求
47、。如进程的估计执行时间及内存需要量少的进程,应赋予较高的优先权。 (3) 用户要求。用户要求。由用户进程的紧迫程度和用户所付费用的多少来确定优先权。 Operating SystemOperating SystemPage 562022-2-21q优先权的类型优先权的类型v静态优先权静态优先权静态优先权在创建进程时确定,且在进程的整个静态优先权在创建进程时确定,且在进程的整个运行期间运行期间保持不变保持不变。一般地,优先权是利用某一。一般地,优先权是利用某一范围内的一个整数来表示的,例如,范围内的一个整数来表示的,例如,0 0 7 7或或0 0 255255, 又把该整数称为又把该整数称为优先
48、数优先数v确定进程静态优先权的依据确定进程静态优先权的依据进程类型进程类型: :系统进程,用户进程系统进程,用户进程进程对资源的需求进程对资源的需求用户要求用户要求v静态优先权特点静态优先权特点系统开销小、不够精确、一般用在要求不高的系系统开销小、不够精确、一般用在要求不高的系统中统中问题:用户将优先权设的较高,对其他进程不利!问题:用户将优先权设的较高,对其他进程不利! 短进程优先对长进程不利!短进程优先对长进程不利!Operating SystemOperating SystemPage 572022-2-21v动态优先权动态优先权随随进程的推进进程的推进或随其或随其等待时间等待时间的增加
49、而改变,以获的增加而改变,以获得更好的调度性能得更好的调度性能可规定,在可规定,在就绪队列中的进程就绪队列中的进程,随其,随其等待时间的增等待时间的增长长,其优先权,其优先权以速率以速率a提高提高具有具有相同相同优先权优先权初值初值的进程,则的进程,则最先进入最先进入就绪就绪队列,其将因其动态优先权变得最高而队列,其将因其动态优先权变得最高而优先获优先获得得处理机,此即处理机,此即FCFS算法算法具有各不相同的优先权初值的就绪进程,则具有各不相同的优先权初值的就绪进程,则优优先权初值低先权初值低的进程,在的进程,在等待了足够的时间等待了足够的时间后,后,其其优先权便可能升为最高优先权便可能升为
50、最高,从而可以获得处理,从而可以获得处理机机当采用抢占式优先权调度算法时,如果再当采用抢占式优先权调度算法时,如果再规定当前规定当前进程进程的优先权的优先权以速率以速率b下降下降,则可防止一个长作业,则可防止一个长作业长期地长期地垄断垄断处理机处理机Operating SystemOperating SystemPage 582022-2-21进程进程名名到达到达时间时间服务服务时间时间静态优静态优先权先权开始开始时间时间完成完成时间时间周转周转时间时间带权周带权周转时间转时间平均平均静态优先权,静态优先权,非抢占式非抢占式(1为高优先权)为高优先权)04A413B225C332D544E10
51、44148418111010/311161414/516181515/29.42.93考虑一下考虑一下抢占式抢占式,情况如何?,情况如何?Operating SystemOperating SystemPage 592022-2-21q高响应比优先调度算法(高响应比优先调度算法(HRF)v是是FCFS和和SJF的结合,克服了两种算法的的结合,克服了两种算法的缺点缺点v调度策略调度策略:响应比:响应比最高的作业优先启动最高的作业优先启动v因因等待时间等待时间+服务时间服务时间=该作业的该作业的响应时间响应时间,故该优先权又相当于故该优先权又相当于响应比响应比RP。据此,又。据此,又可表示为可表示
52、为时时间间务务时时间间权权务务时时间间等等待待+ + 要要求求服服优优先先= =要要求求服服时间务时间响应时间权务时间务时间等等待待+ + 要要求求服服优优先先= = =要要求求服服要要求求服服Operating SystemOperating SystemPage 602022-2-21q 对对HRF的小结的小结v等待时间相同等待时间相同的作业,则的作业,则要求服务的时间愈要求服务的时间愈短短,其,其优先权愈高优先权愈高,v要求服务的时间相同要求服务的时间相同的作业,则的作业,则等待时间愈等待时间愈长长,其,其优先权愈高优先权愈高,v长作业,优先权长作业,优先权随等待时间的增加随等待时间的增
53、加而提高,而提高,其等待时间足够长时,其优先权便可升到很其等待时间足够长时,其优先权便可升到很高,高, 从而也可获得处理机从而也可获得处理机v是一种折衷,既照顾了短作业,又考虑了作是一种折衷,既照顾了短作业,又考虑了作业到达的先后次序,又不会使长作业长期得业到达的先后次序,又不会使长作业长期得不到服务。不到服务。缺点:要进行响应比计算,增加了系统开销缺点:要进行响应比计算,增加了系统开销时间务时间响应时间权务时间务时间等等待待+ + 要要求求服服优优先先= = =要要求求服服要要求求服服对短作业有利对短作业有利是先来先服务是先来先服务对长作业有利对长作业有利Operating SystemOp
54、erating SystemPage 612022-2-21q先来先服务和短作业优先算法先来先服务和短作业优先算法q高优先权优先调度算法高优先权优先调度算法q基于时间片的轮转调度算法基于时间片的轮转调度算法Operating SystemOperating SystemPage 622022-2-21q 简单的时间片轮转法简单的时间片轮转法(RRRound Robin)v系统将所有的就绪进程按先来先服务的原则排系统将所有的就绪进程按先来先服务的原则排成一个队列,每次调度时,把成一个队列,每次调度时,把CPU分配给队首分配给队首进程,并令其执行一个时间片进程,并令其执行一个时间片v当执行的时间片
55、用完时,由一个计时器发出当执行的时间片用完时,由一个计时器发出时时钟中断钟中断请求,调度程序便停止该进程的执行,请求,调度程序便停止该进程的执行,并将其放就绪队列尾;然后,再把处理机分配并将其放就绪队列尾;然后,再把处理机分配给就绪队列中新的队首给就绪队列中新的队首v时间片的大小从几时间片的大小从几ms到几百到几百ms优点:公平。保证就绪队列中所有进程在一给定的优点:公平。保证就绪队列中所有进程在一给定的时间内,均能获得一时间片的处理机执行时间时间内,均能获得一时间片的处理机执行时间缺点:紧迫任务响应慢。缺点:紧迫任务响应慢。UNIX中采用:时间片中采用:时间片+优先权优先权Operating
56、 SystemOperating SystemPage 632022-2-21进程名进程名到达时间到达时间 服务时间服务时间 开始时间开始时间 完成时间完成时间 周转时间周转时间带权周带权周转时间转时间平均平均A B C D E A B C D E A B C E A C E C05101518t04A03B05C02D04E012349121517181515/41212/31818/599/21717/414.24.02若到达时间若到达时间为为0 0、1 1、2 2、3 3、4 4,又如,又如何?何?Operating SystemOperating SystemPage 642022-2
57、-21v分时系统中常用时间片轮转法分时系统中常用时间片轮转法时间片选择时间片选择问题问题固定时间片固定时间片可变时间片可变时间片时间片大小时间片大小与与时间片大小时间片大小有关的因素有关的因素系统响应时间系统响应时间就绪进程个数就绪进程个数CPUCPU能力能力 Operating SystemOperating SystemPage 652022-2-213.2.3 基于时间片的轮转调度算法基于时间片的轮转调度算法 2. 时间片大小的确定时间片大小的确定(1)系统对响应时间的要求)系统对响应时间的要求 数目N和时间片q成反比,即T=Nq,因此在进程数一定时,作为分时系统首先就是必须满足系统对响
58、应时间的要求。时间片的长短将正比于系统所要求的响应时间。(2)就绪队列中进程的数目)就绪队列中进程的数目 在分时系统中,就绪队列上所有的进程数,是随着在终端上机的用户数目而改变的,但系统应保证,当所有终端用户上机时,获得较好的响应时间。(3)系统的处理能力)系统的处理能力 系统的处理能力是必须保证用户键入的常用命令能在一个时间片内处理完毕,否则将无法保证得到满意的响应时间,而且会使平均周转时间及带权周转时间都很长。 Operating SystemOperating SystemPage 662022-2-212. 多级队列调度多级队列调度前台前台的就绪队列是交互性作业的进程,采用时间片轮转。
59、后台后台的就绪队列是批处理作业的进程,采用优先权或短作业优先算法。调度方式有两种:(1) 优先调度前台,若前台无可运行进程,才调度后台。(2) 分配占用CPU的时间比例,如:前台80%,后台20%。3.2.3 基于时间片的轮转调度算法基于时间片的轮转调度算法 Operating SystemOperating SystemPage 672022-2-21q多级反馈队列调度算法多级反馈队列调度算法 v设置设置多个就绪队列多个就绪队列,并为各个队列赋予,并为各个队列赋予不同不同的优先级的优先级第一个队列的优先级最高,第二个队列次第一个队列的优先级最高,第二个队列次之,其余各队列的优先权逐个降低之,
60、其余各队列的优先权逐个降低该算法赋予各个队列中进程执行该算法赋予各个队列中进程执行时间片的时间片的大小也各不相同大小也各不相同,在,在优先权愈高优先权愈高的队列中,的队列中,为每个进程所规定的执行为每个进程所规定的执行时间片就愈小时间片就愈小。例如,例如,第二个第二个队列的时间片要队列的时间片要比第一个比第一个队队列的时间片列的时间片长一倍长一倍,第,第i i+1+1个队列的时个队列的时间片要比第间片要比第i i个队列的时间片长一倍个队列的时间片长一倍Operating SystemOperating SystemPage 682022-2-21就绪队列就绪队列1 1就绪队列就绪队列2 2就绪
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年春季浙江衢州市属国企人力资源交流会招聘115人笔试参考题库附带答案详解
- 2024年新乡市市本级城镇公益性岗位招聘考试真题
- 2024年绍兴市国有企业专场招聘考试真题
- 贺兰县机关事业单位招聘真题2024
- 2025年03月福建吉兆律师事务所公开招聘岗位及要求笔试历年参考题库考点剖析附解题思路及答案详解
- 福建省能源石化集团有限责任公司招聘真题2024
- 如何用平板做课件
- 疫情防控知识初中课件
- 2025合同中巨额违约金是否有效
- 2024-2025学年江苏省南京市八年级上学期数学期末试题及答案
- 人工智能技术应用介绍
- 物业费用测算表
- 中国石油天然气股份有限公司油气田站场目视化设计规定
- 2024年中国电信山东分公司招聘笔试参考题库含答案解析
- 国开2023秋《人文英语4》第1-4单元作文练习参考答案
- 无人机地形匹配导航
- 中医病历示例
- 新人教版高中英语必修第二册-Unit-5THE-VIRTUAL-CHOIR精美课件
- 第9章-无线Mesh网络要点课件
- 一身边的“雷锋”(课件)五年级下册综合实践活动
- 工程造价司法鉴定报告案例
评论
0/150
提交评论