进程的调度算法

1、批处理系统中的调度

(1)先来先服务:
⾮抢占式的调度算法,按照请求的顺序进⾏调度。

有利于⻓作业,但不利于短作业,因为短作业必须⼀直等待前⾯的⻓作业执⾏完毕才能执⾏,⽽⻓作业⼜需要执⾏很⻓时间,造成了短作业等待时间过⻓。

(2)最短作业优先:
⾮抢占式的调度算法,按估计运⾏时间最短的顺序进⾏调度。

⻓作业有可能会饿死,处于⼀直等待短作业执⾏完毕的状态。因为如果⼀直有短作业到来,那么⻓作业永远得不到调度。

(3)最短剩余时间优先:
最短作业优先的抢占式版本,按剩余运⾏时间的顺序进⾏调度。

当⼀个新的作业到达时,其整个运⾏时间与当前进程的剩余时间作⽐较。如果新的进程需要的时间更少,则挂起当前进程,运⾏新的进程。否则新的进程等待。

2、交互式系统中的调度

(1)时间⽚轮转调度
将所有就绪进程按 FCFS 的原则排成⼀个队列,每次调度时,把 CPU 时间分配给队⾸进程,该进程可以执⾏⼀个时间⽚。当时间⽚⽤完时,由计时器发出时钟中断,调度程序便停⽌该进程的执⾏,并将它送往就绪队列的末尾,同时继续把 CPU 时间分配给队⾸的进程。

(2)优先级调度
为每个进程分配⼀个优先级,按优先级进⾏调度。为了防⽌低优先级的进程永远等不到调度,可以随着时间的推移增加等待进程的优先级。

(3)高响应比优先调度算法
高响应比优先调度算法主要用于作业调度,该算法是对 先来先服务调度算法和短作业优先调度算法的一种综合平衡,同时考虑每个作业的等待时间和估计的运行时间。在每次进行作业调度时,先计算后备作业队列中每个作业的响应比,从中选出响应比最高的作业投入运行。

(4)多队列调度算法:
该算法将系统中的进程就绪队列从一个拆分分为若干个,将不同类型或性质的进程固定分配在不同的就绪队列,不同的就绪队列采用不同的调度算法,一个就绪队列中的进程可以设置不同的优先级,不同的就绪队列本身也可以设置不同的优先级。

(5)多级反馈队列:
多级反馈队列调度算法则不必事先知道各种进程所需的执行时间,还可以较好地满足各种类型进程的需要,因而是目前公认的一种比较好的进程调度算法。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值