文档详情

《操作系统》处理机管理.pptx

发布:2025-05-11约1.38万字共10页下载文档
文本预览下载声明

第3章处理机管理本章目录3.1处理机调度概述3.1.1处理机调度的三个层次3.1.2进程调度的功能、时机和基本策略3.2作业调度算法3.2.1先来先服务调度算法3.2.2短作业优先调度算法3.5.3Linux的进程调度算法3.2.3最短剩余时间优先调度算法3.1.3调度算法的性能评价指标3.4实时处理与实时调度算法3.4.1实时处理的特征3.4.2最早截止时间优先调度算法3.4.3速率单调调度算法3.5Linux的处理机调度3.5.1涉及调度的进程分类3.5.2Linux的可运行队列3.2.4最高响应比调度算法3.3进程调度算法3.3.1先来先服务调度算法3.3.2轮转调度算法3.3.3优先级调度算法3.3.4多级队列调度算法3.3.5多级反馈队列调度算法

3.1处理机调度概述3.1.1处理机调度的三个层次高级调度1.当系统决定接纳一个作业时,就要为它开辟一个作业控制块(JCB),以便随时记录作业的信息。被系统接纳的作业,在没有投入运行前是以“后备作业”的形式存放在辅存里。所有后备作业的JCB链接在一起,形成“后备作业队列”。这些作业没有资格参与对处理机的竞争,但系统从它们的里面去挑选参与CPU竞争的作业。高级调度决定哪个后备作业可进入系统去接受处理,它控制着多道程序设计环境的“度”:进到系统的作业多,资源的利用率提高了,但每个作业获得处理结果的时间可能会长;进到系统的作业少,每个作业很快就得到自己的处理结果,但资源的利用率可能会下降。低级调度低级调度真正决定CPU下一次执行哪一个进程,它将按照一定的算法,从就绪队列里挑选出可运行的进程投入运行。低级调度的各种算法,是我们讨论的主要目标。低级调度也被称为“进程调度”。

中级调度3.中级调度是介于高级调度和低级调度之间的一种调度,如果系统为进程设置有“挂起”状态,那么就会涉及到中级调度。也就是说,中级调度与实施进程的内、外存交换有关。CPU就绪队列低级调度释放中级调度就绪/挂起队列时间片到高级调度阻塞/挂起队列阻塞队列中级调度事件等待事件发生交互用户作业后备作业队列系统中出现过高并发度时,就应将内存中的某些进程暂时换出到外存;系统的并发度较低时,就应该将外存中的某些进程换入到内存。进程在内、外存间的换出和换入,就是中级调度承担的责任,通过这种交换,以求达到调节和平衡系统“并发度”的目的。高级调度执行的频繁程度很低,它只是粗略地决定是否接受一个新进程以及接受哪一个;中级调度为了实施交换决策,执行的频率相对要频繁一些;低级调度要精确地决定执行哪一个进程,因此执行的频度为最高。

进程调度的功能、时机和基本策略进程调度程序的功能保护现场挑选运行对象恢复现场当某进程正常完成自己的运行或被终止时,为不让CPU空闲,必须实行调度,以便从就绪队列里挑选新的进程投入运行。分时系统中,时钟中断处理程序发现分配给某个进程的时间片用完时,就强制它交出CPU,重新进行CPU调度。发生进程调度的时机01运行中的进程提出I/O请求,或要等待别的进程发来消息,于是自己被阻塞。执行操作系统提供的某些系统调用命令,如wait()等。某进程的状态从阻塞变为就绪时,要由调度程序决定让哪一个进程投入运行:是新就绪进程、是正在运行的进程继续运行、还是调度另一个进程运行。非抢占式:在把CPU分配给某个进程后,就一直让它使用下去,直到进程完成自己的工作,或因要等待某事件的发生而交出CPU,否则不允许其他进程夺取CPU。抢占式:在调度程序把CPU分配给某进程使用后,只要满足某条件,就允许立即把CPU从运行进程手中夺取过来,分配给满足条件的进程使用。进程调度的基本策略02

特定作业从提交给系统到获取结果所经历的时间间隔。因此,设作业i向系统提交的时间为Tpi,完成时间是Tci,那么它的周转时间Ti为:Ti=Tci-Tpi。3.1.3调度算法的性能评价指标吞吐量周转时间所谓“吞吐量”,是指单位时间内CPU完成作业的数量。有的作业属于“处理机限制”型的,即需要花费大量的CPU时间,很少输入/输出,也称“CPU繁忙”型;有的属于“I/O限制”型的,即它在运行期间主要是输入/输出,很少进行计算和处理,也称“I/O繁忙”型。作业的周转时间作业的周转时间是指作业的执行时间加上作业的等待时间。设作业i的等待时间为Twi,执行时间为Tsi,那么它的周转时间Ti为:Ti=Twi+Tsi。(1)(2)

显示全部
相似文档