1.先来先服务调度算法
每次调度时都从队列中选择最早进入该队列的作业,为其分配cpu资源并运行
该算法优先运行最早进入的任务,实现简单且相对公平。
2.短作业优先调度算法
每次调度时都从队列中选择预估运行时间最短的作业
该算法优先运行短时间作业,以提高CPU整体的利用率和系统运行效率,某些大任务可能会出现长时间得不到调度的情况。
3.高响应比优先调度算法
动态优先权(进程的优先权,随着时间的变化是在不断进行改的)
显然从公式中可以看出,这个算法融合了短作业优先(执行时间越短优先级越高)和先来先服务(等待时间越长优先级越高)
4.时间片轮转算法
按照先来先服务的原则从队列中取出一个任务,这个任务执行完一个时间片,就轮到下一个任务执行一个时间片了
和先来先服务的区别:先来先服务是一次性运行完,时间片轮转是每次只运行固定时间(一个时间片),没有运行完,也要让出cpu使用权
5.多级反馈队列调度算法
1.设置多个队列,同一个队列中的任务使用时间片轮转算法
不同队列的时间片不同
2.比如现在有第一个队列,第二个队列,第三个队.......
只有第一个队列中没有任务之后,才会去执行第二个队列的任务,只有第二个队列没有任务之后,才会去执行第三个队列的任务..........
3.第一个队列的一个任务运行完之后,将它放到第二个队列的队尾继续等待cpu调度