模板建站和仿站,美空wordpress主题,如何开淘宝店并运营店铺,上海企业建站 免费计算机操作系统——处理机调度算法 一、处理机调度的层次和调度算法的目标
1.处理及调度的层次
高级调度#xff1a;#xff08;周期较长#xff0c;大约几分钟一次#xff09; 又称为长程调度或作业调度 调度对象#xff1a;作业 功能#xff1a;根据算法决定将外存中…计算机操作系统——处理机调度算法 一、处理机调度的层次和调度算法的目标
1.处理及调度的层次
高级调度周期较长大约几分钟一次 又称为长程调度或作业调度 调度对象作业 功能根据算法决定将外存中处于后备队列的作业调入内存然后为它们创建进程建立PCB、分配必要的资源使它们获得竞争处理及的权利作业调度时会建立相应的PCB作业调出时才撤销PCB。 主要用于多道批处理系统中级调度 又称为内存调度 调度对象进程 功能提高内存利用率和系统吞吐量把内存中暂时不能运行的进程调至外存等待此时的进程处于挂起状态。当它们具备运行条件并且内存有空间时中级调度来决定把外存的哪些就绪进程重新调入内存。低级调度最基本的调度使用频率最高分时系统在10~100ms进行一次进程调度 又称为进程调度或短程调度 调度对象进程或内核级线程 功能根据某种算法决定哪个进程获得处理机并由分派程序将处理机分配给被选中的进程
2.处理机调度算法目标 处理机调度算法的共同目标 1资源利用率 CPU的利用率 2公平性让所有进程获得合理的CPU时间尽量不产生饥饿现象 3平衡性 4策略强制执行 批处理系统的目标 1平均周转时间短 周转时间等待时间执行时间完成时刻-到达时刻 平均周转时间各进程周转时间之和/进程的个数 带权周转时间周转时间/CPU提供服务的时间 2系统吞吐量高 吞吐量单位时间内系统完成的作业数它与批处理作业的平均长度有关 3处理机利用率高 分时系统的目标 1响应时间按快 2均衡性 实时系统的目标 1截止时间的保证 2可预测性 二、 非抢占式调度算法
1.先来先服务调度算法FCFSFirst-Come-First-Served 算法规则按照作业/进程到达的先后顺序进行服务优点公平实现简单缺点带权周转时间长对长作业有利短作业不利 例题详解解题方式我习惯于用数轴表示也可以画表格但是感觉不如数轴看着形象
2.短作业优先调度算法SJFShort-Job-First 算法规则最短的进程/作业优先得到服务该算法也有抢占式优点减少了平均等待时间和平均周转时间缺点对短作业有利长作业不利容易产生饥饿现象必须预知作业的运行时间人——机无法实现交互未考虑作业的紧迫程度不能保证紧迫性作业及时得到处理。 例题详解 3.高响应比优先调度算法HRRNHighest-Response-Ratio-Next - 算法规则每次调度时先计算响应比选择响应比最高的进行服务
优点避免了长作业饥饿的问题集合了SJF和FCFS的优点 响应比大的优先调度不值得等待的进程优先调度 响应比越小等得越值得
例题详解 三、抢占式调度算法
进程调度的机制1排队器2分派器3上下文切换器 进程调度方式抢占式、非抢占式 抢占式的剥夺原则1优先权原则 2短进程优先原则 3时间片原则 1.轮转调度算法时间片轮转 轮转调度算法 1基本原理将所有就绪进程按FCFS排成一个就绪队列系统设置每隔一定时间便产生一次中断去激活进程调度程序进行调度把CPU分配给队首进程并令其执行下一个时间片… 2切换机制 a.若一个时间片尚未用完正在运行的进程便已经完成就立即激活调度程序将它从就绪队列中删除再调度就绪队列中队首的进程进行并启动一个新的时间片。 b.在时间片用完时如果进程尚未运行完成调度程序将把它送往就绪队列的末尾。
时间片大小的确定 1时间片太小增加系统的开销 2时间片太大时间片轮转便退化为FCFS算法无法满足交互式用户需求
时间片轮转调度算法常用于分时操作系统更注重“响应时间”因而此处不计算周转时间 2.优先级调度算法
分为抢占式和非抢占式 优先级类型 1静态优先级 2动态优先级 3.多级反馈队列调度算法 调度机制 首先设置多级就绪队列 每个就绪队列分配不同的时间片优先级高的为第一队列时间片最小随着就绪队列级别的降低时间片逐渐增大。每个进程按照先来先服务调度算法 一个进程就绪后进入第一级队列末尾当有一个优先级更高的进程就绪时可以抢占CPU被强占进程回到原来一级的就绪队列末尾。当第一级别队列空时就去调度第二队列…以此类推。当时间片结束后进程放弃CPU转入下一级队列。 多级反馈队列示意图