cpu队列长度太长解决方法_操作系统复习-CPU调度算法

  • 先到先服务(FCFS)调度算法:采用这种方案,先请求的进程先得到CPU,由于是非抢先调度,所以一个进程得到CPU后,会一直占用CPU到该进程结束。
    • 优点:简单,理解容易
    • 缺点:进程平均等待时间长,假设一组进程(P1, P2, P3),所需时间(24, 3, 3), CPU执行长度按ms记,按照FCFS算法,执行顺序为(P1, P2, P3)则平均等待时间为 (0 + 24 + 27) / 3 = 17ms,如果执行顺序为(P2, P3, P1), 则平均等待时间为(0 + 3 + 6) / 3 = 3ms,这个减少是相当大的。
  • 最短作业优先(SJF)调度算法:这个算法将每个进程与下次CPU执行的长度关联起来,当CPU变为空闲时,它会被赋给CPU执行时间最短的进程。
    可以看出,SJF算法是最优的,因为对于任意一组给定的进程,SJF算法的平均等待时间最小,因为总是可以通过把短进程移到长进程之前,来使平均等待时间减少。
    • 优点:如果能够实现将是最优的。
    • 缺点:这个算法有一个附加的问题,就是如何准确地知道每个进程所需要的时间,这是很困难的,所以SJF算法经常用于长期调度,将用户提交作业时指定的进程时限作为长度。
  • 近似最短作业优先调度算法:由于很难精确得到进程的执行时间,该算法采用预测CPU执行长度的方法:,其中 0 <=α <= 1,用来控制最近和过去历史在预测中的权重。
    SJF算法是可以是抢占的或非抢
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值