《操作系统》第3章处理机调度与死锁.ppt
《《操作系统》第3章处理机调度与死锁.ppt》由会员分享,可在线阅读,更多相关《《操作系统》第3章处理机调度与死锁.ppt(28页珍藏版)》请在三一办公上搜索。
1、操作系统原理Principles of Operating System,2,第3章 处理机调度与死锁,处理机是计算机系统中的重要资源,处理机调度就是按照一定的规则分派处理机,合理地分配和使用处理机。传统操作系统处理机调度的单位是进程,现代操作系统处理机调度的单位是线程。如何在进程间或线程间分配和回收处理机,处理机调度算法对整个计算机系统的综合性能指标有重要影响,不仅影响处理机的利用率和用户进程的执行,还与内存等其他资源的使用密切相关。,3,3.1.1 处理机调度的类型,我们可把处理机调度分成宏观调度(作业调度)、中程调度(交换调度,涉及进程在内存和外存之间的交换)和微观调度(进程调度和线程调
2、度)三个层次。,4,具有三级调度的调度队列模型,5,3.1.2 宏观调度,宏观调度在多道批处理系统中对应作业调度,就是按照系统所规定的调度算法从系统已接纳的一批作业中选取一个子集,做好运行前的准备工作,使其进入内存并运行。现代操作系统中一般不配备作业调度。作业调度完成以下几方面的工作:按某种调度算法从后备队列中选取一个子集。为选中的作业子集分配所需的资源,如内存、外设等。为选中的作业子集创建相关进程。填写修改被选中的作业的JCB及有关表格。作业完成时的善后工作。,6,3.1.3 微观调度,微观调度也称低级调度,微观调度才是真正的处理机调度,在实际系统中对应线程调度、进程调度或任务调度。微观调度
3、要解决的问题WHAT:按什么原则分配CPU,即调度算法。WHEN:何时分配CPU,即调度的时机。HOW:如何分配CPU,即调度过程,进程的上下文切换。,7,进程调度器,操作系统为了对进程进行有效的监控,需要维护一些与进程相关的数据结构,记录所有进程的运行状况,并在进程出让处理机或调度程序剥夺执行状态进程占用的处理机时,选择适当的进程分派处理机,完成上下文切换。我们把操作系统内核中与进程调度相关代码称为进程调度器(dispatcher)。,8,调度方式,非剥夺方式:也叫非抢占方式,调度程序一旦把处理机分配给某进程或线程后便让它一直执行下去,直到进程或线程完成或等待某事件而阻塞时,才把处理机分配给
4、另一个进程或线程。剥夺方式:也叫抢占方式,当一个进程或线程正在执行时,系统可以基于某种原则,剥夺已分配给它的处理机,将处理机分配给其他进程或线程。常用的剥夺原则有优先权原则和时间片原则。,9,3.2 调度算法,选择调度方式和算法的若干准则调度算法的确定基于一定因素,我们希望好的调度算法是,系统运行尽能多的任务,使CPU保持忙,使I/O保持忙,对所有任务公平合理,也要有轻重缓急,重要的任务优先处理。衡量操作系统及计算机系统的重要指标如下:周转时间短。响应时间快。截止时间的保证。优先权准则。系统吞吐量高处理机利用率好各类资源的平衡利用-是面向用户的指标,-是面向系统的指标。采用何种调度方法,是衡量
5、操作系统及计算机系统的重要指标之一。指标的好与差,对系统的使用直接产生影响。,10,调度性能评价指标,CPU的利用率:CPU是一个重要且昂贵的资源,人们需要使CPU尽可能忙,并希望它的利用率越高越好。CPU使用率从0到100,对于真实系统,它应从40(轻负荷系统)到90(重负荷使用的系统)。读者要注意CPU的利用率和使用率的含义,如果运行进程的个数多,各进程之间的时间片切换频繁,CPU的使用率很高,但将造成CPU的利用率越低。吞吐量:如果CPU忙于执行进程,那么就要评估其工作量。其中一种测量工作量的方法称为吞吐量,吞吐量是指单位时间内所完成任务的数量。,11,周转时间:从一个特定任务的角度来看
6、,重要指标是运行该任务需要花费多长时间。即从任务提交到任务完成的时间间隔称为周转时间。周转时间Ti:Ti=Tci-Tpi(Tpi-进程提交时间,Tci-进程完成时间)。周转时间是以下所有时间段之和,包括等待进入内存、在就绪队列中等待、阻塞队列中的等待时间、在CPU上执行等。等待时间包括等待进入内存、在就绪队列中等待、阻塞队列中的等待时间。故Ti=Twi+Tsi(Twi-进程等待时间,Tsi-进程执行时间)。为了去除进程本身因素的影响,在讨论处理机调度时也使用平均周转时间T和平均带权周转时间W作为衡量指标。平均周转时间T设:系统中有n个任务,则平均周转时间T为:(i=1,2,n)利用平均周转时间
7、可衡量不同调度算法对相同任务流的调度性能。带权周转时间W:带权周转时间是用周转时间除以进程的执行时间,能够合理反映任务长短差别的指标。Wi=Ti/Tsi=(Twi+Tsi)/Tsi,12,平均带权周转时间:(i=1,2,n)利用平均带权周转时间可比较某种调度算法对不相同任务流的调度性能。响应时间:对于交互式系统,周转时间并不是最佳指标。另一时间度量是从提交请求到产生第一响应的时间,我们称为响应时间。响应时间是开始响应所需要的时间,而不是输出该响应所需要的时间。周转时间通常受输出设备速度的限制,响应时间是分时系统中衡量系统交互性能的指标。截止时间:在实时系统中,还使用截止时间来衡量系统的实时性能
8、,截止时间可分为开始截止时间和完成截止时间。,13,3.2.2 调度算法,先来先服务调度算法先来先服务调度算法(First Come First Server,FCFS),总是把处理机分配给最先进入就绪队列的进程或线程。由于它的处理机调度采用非抢占方式,一个进程或线程一旦分得处理机,便执行下去,直到该进程或线程完成或阻塞时,才释放处理机。先来先服务调度算法很简单,很“公平”,但对进程或线程的特殊要求(没有考虑进程的优先级)无法满足,一般作为子调度算法,先来先服务调度算法的例子如表3-1所示。该算法适合于进程调度、线程调度、任务调度、作业调度和其他资源调度等。,14,先来先服务调度算法例子,15
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 处理机 调度 死锁

链接地址:https://www.31ppt.com/p-6527566.html