操作系统-----处理器调度算法

CPU的三级调度

1.高级调度----作业调度

按一定的算法把外存上处于后备作业队列中的作业调入内存,为它们分配所需要的资源并创建进程,然后将新创建的进程插入到系统的就绪队列中。

2.中级调度----交换调度

在内存使用紧张的情况下,将内存中暂时无法运行的进程挂起,将其从内存调至外层

3.低级调度----进程调度

按照一定的算法将CPU分配给就绪队列中的某个进程

几种调度算法

周转时间=完成时间-提交时间=运行时间+等待时间
带权周转时间=周转时间/运行时间

先来先服务调度算法—FCFS

最简单的一种调度算法,可以用于作业调度也可以用于进程调度,非抢占式调度算法
基本思想:每次从进程就绪队列中选择一个最先进入的进程,然后将CPU分配给该进程使其运行直到结束,中间不允许被打断。

短作业/短进程调度算法(SJF/SPF)

基本思想:每次都从就绪队列中选择运行时间最短的作业或最短的进程,然后将CPU分配给它,当两个作业或进程运行时间一样时,按FCFS再进行选择----------不可抢占
SJF可以保证平均等待时间最短

时间片轮转算法(RR)

基本思想:先按FCFS选择第一个进程,然后将CPU分配给该进程,当时间片用完时,CPU放弃该进程,该进程进入就绪队列的队尾,然后重新选择当前就绪队列中的第一进程。
当时间片过长时,RR就近似为FCFS

高响应比优先调度算法(HRRF)

响应比=响应时间/运行时间=(运行时间+等待时间)/运行时间
基本思想:每次进行进程或作业选择时,先计算该作业或进程的响应比,响应比大的优先调度,HRRF是对FCFS和SJF算法的一种折中。

多级反馈队列调度算法(MLFQ)

基本思想:将就绪状态的进程设置多个队列,第一级队列的优先级最高,但时间片最少,以下各级队列的优先级逐次降低但是时间片逐渐增加,对于同一级队列,采样FCFS原则排序。
1.抢占式调度
2.若某个进程在第n级队列。当时间片用完还未结束,则将该进程加入下一级队列的队尾
3.只有前一级队列全部运行完为空时才能调度该级队列

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CodePanda@GPF

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值