CPU调度算法

本文介绍了操作系统中的四种CPU调度算法:先到先服务(FCFS)、最短作业优先(SJF)、优先级调度和轮转法。FCFS可能导致护航效果,降低CPU利用率;SJF是最优策略,但面临进程CPU时间预测的挑战;优先级调度可能引发饥饿问题,老化技术可以缓解此问题;轮转法通过时间片实现进程快速切换,适用于分时系统。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这是本人在操作系统期中考试前复习是碰到的问题,花了一些时间解决,现在记录下来。

1. 先到先服务调度

先到先服务(first-come, first-served, FCFS)。
这可以利用 FIFO 队列轻松实现。
采用 FCFS 的缺点是平均等待时间通常较长。

另外考虑在动态情况下,CPU 会出现所谓 护航效果 导致 CPU和设备的使用率更低

2. 最短作业优先调度

shortest-job first。当CPI空闲时,这种算法会将CPU赋给具有最短CPU区间的进程,如果两个进程有相同的CPU长度,那么就可以用FCFS来处理。
称为 SJF 策略。

SJF策略可以被证明为是最佳的。不过实际的困难是,如何知道某个进程的CPU时间。一种方式是预测,
根据上次上下文切换时保存的信息等,可以推出这个进程的上一个CPU时段的耗时,可以作为下一次CPU区间时长的估计。

SJF 有时也被称为最短剩余时间优先调度

3. 优先级调度

SJF 是通用优先级算法的一个特例。每个进程都有一个优先级与之关联,具有最高优先级的进程会被先分配到 CPU 中。具有相同优先级的进程采用FCFS顺序调度。SJF 属于简单优先级的算法,其优先级(pp<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值