带你一周刷完操作系统视频笔记(2)-进程调度算法

 在这一部分笔记中整理,关于进程调度的常用的算法,前四个算法各有优缺,第五个和第六个算法最为重要,一定要理解。

  1. 典型的调度算法
    • 先来先服务(FCFS-first come first served)

      调度方式:非抢占式调度

      适用场景:作业/进程调度

      优缺点:有利于CPU繁忙型作业,充分利用PCU资源,不利于IO繁忙型作业,操作耗时

    • 短作业优先(SJF-shortest job first)

      SRTN抢占式:最短剩余时间优先

      算法原则:追求最少的平均(带权)周转时间

      调度方式:SJK/SPF非抢占式

      使用场景:作业和进程调度

      优缺点:平均周转时间最少,长时间周转时间会增加或者饥饿,估计时间不准确,不能保证急迫的任务及时处理

    • 高响应比优先调度(HRRN-highest response ratio next)

      算法内容:结合FCFS和SJF,综合考虑等待时间和服务时间计算响应比,高的优先调度

      算法原则:综合考虑作业进程的等待时间和服务时间

      调度方式:非抢占式

      响应比计算:

      • 响应比=(服务时间+等待时间)/服务时间,≥1
      • 只有当前进程放弃执行权的时候(完成/阻塞),重新计算所有进程响应比
      • 长作业等待越久,响应比越高,更容易获得处理机
    • 优先级调度(PSA,priority scheduling algorithm)

      调度方式:抢占/非抢占(并不能获得及时执行)

      适用场景:作业/进程调度

      优先级设置原则

      • 静态/动态优先级
      • 系统>用户;交互型>非交互型;IO型>计算型
      • 低优先级进程可能会产生饥饿
    • 时间片轮转调度(RR,round-robin)

      算法内容:按照进程到达就绪队列的顺序,轮流分配了一个时间片执行,时间用完则剥夺

      算法原则:公平,轮流为每个进程服务,进程在一定时间内都能得到响应

      调度方式:抢占式,有时钟中断确定时间

      使用场景:进程调度

      优缺点:公平响应快,适用于分时系统,时间片由:系统响应时间,就绪队列进程数量,系统处理能力决定,缺点是时间片太大相当于FCFS;太小,处理机转换频繁,开销增大

    • 多级反馈队列调度(MFQ,nultileveled feedback queue)

      算法内容:设置多个优先级队列的就绪队列,优先级从高到低,时间片从小到大,新进程采用队列降级法,前面的队列不为空就不执行后续的队列

      算法原则:集合了前面集中算法的优点,相当于PSA+RR

      调度方式:抢占式

      适用场景:进程调度

      优缺点:对于各类型相对公平,快速响应;终端型作业用户:短作业优先;批处理作业用户:周转时间短;长批处理作业用户:用前几个队列部分执行。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值