先讲4个概念
(1)周转时间:从进程创建到结束的时间
(2)平均周转时间:n个进程的周转时间总和除以n
(3)等待时间:进程处于等待处理机状态的时间之和
(4)平均等待时间:n个进程的等待时间总和除以n
下面是7个调度算法
名称 | 特点 | 优点 | 缺点 |
先来先服务 | 进程一旦运行,除非完成或者等待,否则一直得到处理机 | 简单易实现 | 增加进程平均周转时间 |
优先级调度算法 | 按照进程优先级来调度进程获得处理机 | 吞吐率较大 | 优先度较低的进程可能一直得不到满足 |
时间片轮转算法 | 按照先来先服务的原则对第一个进程赋予一块时间片,时间片结束将进程挂在队列末尾 | 避免某些进程长时间占用 CPU 资源的问题 | 时间片长度难以选取,坑导致整体响应时间边长 |
短进程优先调度算法 | 选取运行时间最短的进程进入主存进行 | 缩短了进程平均等待时间 | 隔进程等待时间变化范围较大,等待时间难以估计,大进程可能饿死 |
最短剩余时间优先算法 | 让运行到任务完成时所需的运行时间最短的进程优先得到处理 | 可以用于分式系统,保障及时响应客户需求 | 系统开销增加 |
最高响应比优先调度算法 | 对SPF进行优化,根据w/t的值动态排序确定优先级 | —————— | _________ |
多级反馈队列调度算法 | 创建多级队列,多级队列优先级逐渐降低 | 公平,响应快,适用于分时操作系统 | 有额外开销,不区分任务紧急程度 |