操作系统原理第六章(进程调度) |
您所在的位置:网站首页 › 刀具管理器的主要功能 › 操作系统原理第六章(进程调度) |
一、调度/分派结构 调度:依照完全确定的策略将一批进程进行排序 分派:从就绪队列中移出一个进程并给它提供处理机的使用权 调度程序负责将一个进程插入到就绪队列中,并按一定原则保持队列结构;分派程序将进程下从就绪队列中移出并建立该进程执行的机器状态。 二、进程调度的功能和调度准则 1.进程调度的功能: 记录和保持系统中所有进程的有关情况和状态特征; 决定分配策略; 实施处理机的分配和回收; 进程调度的时机: 进程完成其任务时; 在一次管理程序调用之后,该调用使现行程序暂时不能继续运行时; 在一次出错陷入之后,该陷入使现行进程在出错处理时被挂起; 在分时系统中,当进程使用完规定的时间片,时钟中断使该进程让出处理机时; 在采用可剥夺调度方式的系统中,当具有更优先级的进程要处理机时。 2.进程调度准则: CPU使用率:40%(轻负荷系统)-----90%(重负荷系统) 吞吐量:一个时间单元内所完成的进程数量 周转时间:在批处理系统中,从作业进入系统到完成的时间间隔(所有时间段之和) 响应时间:从联机用户向计算机发出一个命令到计算机执行完该命令,并将相应执行结果返回给用户所需时间。 等待时间:进程在就绪队列中所花费的时间 3.调度方式: 非剥夺方式:若有更高优先级的进程进入就绪队列时,仍然让正在执行的进程继续执行,知道该进程完成或者进入“阻塞”“完成”状态的时候,才把处理机分配给具有更高优先级的进程; 可剥夺方式:若有更高优先级的进程进入就绪队列时,立即暂停正在执行的进程,把处理机分配给它; 可抢占策略:(U,V)标志 U=1:该进程可抢占另一进程 U=0:该进程不可抢占另一进程 V=1:该进程可被另一进程抢占 V=0:该进程不可被另一进程抢占 三、典型调度算法: 1.先来先服务调度:按照作业进入系统的时间先后次序来挑选作业,先进入系统的作业优先被运行 容易实现,效率不高 只考虑作业的等待时间,没考虑作业的运行时间长短,不利于短作业 2.短作业优先调度:参考运行时间,选取运行时间最短的作业投入运行 容易实现,效率不高 忽视了作业的等待时间,一个早来但是长的作业可能在长时间内得不到调度,容易出现资源“饥饿”现象。 3.响应比高者优先调度:调度作业时计算作业列表中每个作业的响应比,选择响应比高的优先投入运行 响应比=响应时间/运行时间 =1+等待时间/运行时间 等待时间相同,有利于短作业;运行时间相同,有利于等待时间很长的作业 4.优先数调度算法:根据进程优先数,将CPU分配给最高的进程 进程优先数=静态优先数+动态优先数 静态优先数:进程创建时给定,整个进程运行期间不会变动 动态优先数:在进程运行期间可以改变 静态优先数的确定:根据进程所需要的资源来计算; 基于程序运行时间的估计; 基于进程的类型。 动态优先数的确定:当进程使用CPU超过一定数值时,降低优先数; 当进程进行IO操作时,增加优先数; 当进程等待时间超过一定数值时,增加优先数。 5.循环轮转调度法:把所有就绪进程按先进先出原则排成队列,新来的进程加到队列末尾;进程以时间片q为单位轮流使用CPU,刚刚运行了一个时间片的进程排到队列末尾,等待下一轮调度;逻辑上是环形的。 优点:公平性(每个就绪进程获得CPU的机会均等) 交互性(每个进程等待一定时间后就可以重新获得CPU) 若时间片太大,交互性差,甚至退化为先进先出调度算法; 若时间片太小,进程切换频繁,系统开销增加。 改进:时间片的大小可变(可变时间片轮转调度法) 组织多个就绪队列(多重时间片循环轮转 ) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |