CPU常见的调度算法

本文探讨了处理器调度的基本准则,如周转时间和响应速度,介绍了先来先服务(FCFS)、短作业优先(SJF)和轮转调度(RR)算法。讲解了它们的优缺点,适合不同系统类型的调度策略。

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

一、处理机调度相关基本概念

1. 调度方式和调度算法的若干准则
面向用户的准则:周转时间短(CPU执行用时Ts、周转时间T=Ts+Tw、带权周转时间W= T/Ts)、响应时间快、均衡性、截止时间的保证、优先权准则
面向系统的准则:系统吞吐量高、处理机利用率好、各类资源的平衡利用批处理系统为照顾为数众多的短作业,应采用短作业优先的调度算法;分时系统为保证系统具有合理的响应时间,应采用轮转法进行调度

二、常用调度算法

1、先来先服务调度算法FCFS

  1. 按照作业提交,或进程变为就绪状态的先后次序分派CPU
  2. 新作业只有当当前作业或进程执行完或阻塞才获得CPU运行
  3. 被唤醒的作业或进程不立即恢复执行,通常等到当前作业或进程出让CPU。(所以,默认即是非抢占方式)
  4. 有利于CPU繁忙型的作业,而不利于I/O繁忙的作业(进程)。

2、短作业(进程)优先调度算法SJF(非抢占)/SPF(抢占)

  1. 平均周转时间、平均带权周转时间都有明显改善。SJF/SPF调度算法能有效的降低作业的平均等待时间,提高系统吞吐量。
  2. 未考虑作业的紧迫程度,因而不能保证紧迫性作业(进程)的及时处理、对长作业的不利、作业(进程)的长短含主观因素,不一定能真正做到短作业优先。

3、基于时间片的轮转调度算法RR
过程:

  1. 排成一个队列
  2. 每次调度时将CPU分派给队首进程。
  3. 时间片结束时,发生时钟中断。
  4. 暂停当前进程的执行,将其送到就绪队列的末尾,并通过上下文切换执行当前就绪的队首进程。

说明:

  1. 进程阻塞情况发生时,未用完时间片也要出让CPU。
  2. 能够及时响应,但没有考虑作业长短等问题。
  3. 能够及时响应,但没有考虑作业长短等问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值