作业(进程)调度算法总结
FCFS(First Come First Served): 先来先服务算法
选择最先进入后备队列的作业装入内存
优点:容易实现
缺点:对时间要求紧急的作业不能及时处理
SJF(Shortesr Job First):最短作业优先算法
运行时间最短的优先
优点:照顾短作业用户,提高系统吞吐量
缺点:长作业可能长时间得不到运行
HRF(Hightest Response First):最高响应比优先
优点:考虑到哦作业的运行长度和进入程序的先后次序
缺点:每次调度都要计算每个作业的响应比,开销大
HPF(Highest Priority First)最高优先级算法
选择后备队列作业中优先级最高的作业
依据系统根据用户级别,用户租金,作业类别,运行时间等为一个作业评定优先级
均衡性调度算法
作业的类别
根据内存容量的限制,选择一组资源互补的作业装入
最短剩余时间优先算法
主要用于周期性实时任务
剩余时间F(i) =i×T- T0- t
i 是第i个周期 T周期时间 T0任务运行时间 t 当前时间
F(i)最小的优先执行
RR(Round Robin)算法
应用于分时系统,提高相应比,按时间片轮转调度
算法的启动时机:
一个时间片运行结束
当前进程运行结束
正在运行的进程因运行受阻主动放弃cpu控制权
多级队列调度算法
1.设置多个就绪队列
2.就绪队列优先级不同
3优先级高的调度完成后在调度低优先级的队列
多级队列反馈机制
1.设置n个队列Q1…Qn
2.记Qi的优先级为Q1>Q2>…>Qn
3.记Qi的时间片为Qi, Q1<Q2<…Qn
4.新建进程进入Q1
5.只有QI为空时,才能调用Q(i+1)队列中的进程
6.Qi被调动当一个时间片未运行完成时,则进入Q(I+1)的队列
短的批处理作业
开始时首先进入第一个队列,能及时相应,若轮转一周不能完成,通常在第2或第3轮完成,作业的周转时间短
长的批处理作业
一个长的批处理作业进入系统后,将以次在第1,2,。。n轮个运行一个时间片,时间片是递增的,系统开销比较小
作业调度性能的衡量标准
1.系统吞吐量:单位时间内系统完成的工作量,作业调度的第一目标
参数:平均周转时间
T越小,系统吞吐量越大
2.对短作业优惠
主要是利于中小用户使用计算机
参数:平均加权周转时间W
参考:
https://www.icourse163.org/learn/QDU-1206575805?tid=1450725780#/learn/content?type=detail&id=1216442211&cid=1222122267