1、FCFS算法(先来先服务):
每次调度都是从队列中选择一个或多个最先进入该队列的作业。
不利于短作业
有利于长作业
2、SJ(P)F算法(短作业/进程优先调度算法)
每次调度都是从队列中选择一个或多个运行时间最短的作业。
不利于长作业
可能造成长作业长期不被调用
有利于短作业
平均等待时间最少,平均周转时间最少。
3、优先级调度算法
1)非剥夺式
当一个进程正在运行时,一个优先级更高的进程L进来,系统则运行完当前进程,再运行L。
2)剥夺式
当一个进程正在运行时,一个优先级更高的进程L进来,系统则停止当前进程,运行L。
4、高响应比优先调度算法
调度响应比最高的进程。
响应比 =(等待时间+要求服务时间)/要求服务时间
客服饥饿状态,兼顾长作业。是对FCFS与SJF的一种平衡。
5、时间轮转调度算法
适用于分时系统。
时间片过大,进程都在一个时间片中运行,就退化为FCFS调度算法。
时间片过小,调度频繁切换进程,开销大。