操作系统(9)

本文介绍了处理器调度,包括长程、中程和短程调度的概念、调度时机及考虑因素。还阐述了短程调度准则,分面向用户和面向系统两方面。介绍了多种调度算法,如FCFS、RR、SPN等,分析了各算法的特点及优缺点,并对几种算法进行了比较。

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

9.1处理器调度

  1. 长程调度(作业调度):决定是否将提交的新作业送入内存
    1. 控制系统并法度
    2. 长程调度也根据系统并发度决定启动,当老进程结束或CPU空闲超过阈值时
    3. 调度不频繁
    4. 根据FCFS,优先级,预计执行时间,组合CPU密集型,I/O密集型,组合不同I/O需求等来决定调度哪个作业
    5. 分时系统不需要长程调度
  2. 中程调度:决定哪些进程在内存和磁盘间交换(挂起)(交换区专放挂起进程)
    1. 根据系统并发度决定中程调度的时机
    2. 考虑换入(出)进程的内存空间长度
  3. 短程调度:决定CPU执行哪个就绪进程
    1. 调度频繁
    2. 当进程被阻塞或抢占时调度
      1. 时钟中断(时间片结束)
      2. I/O中断
      3. 操作系统调用
      4. 信号(信号量)

9.2调度算法

  1. 短程调度准则
    1. 面向用户
      1. 周转时间——适合批处理作业
      2. 响应时间——适合分时系统
      3. 最后期限——适合实时系统
      4. 归一化时间//带权周转时间(不带单位<=1)
    2. 面向系统
      1. 吞吐量
      2. 处理器利用率
  2. 选择调度策略
    1. 两种调度(决策模式):
      1. 非抢占式:当前进程一直运行,直到终止或阻塞才再次分配CPU
      2. 抢占式:时间片结束或有更高级进程就绪时被抢占
    2. 策略
      1. FCFS(先来先服务):按照提交顺序,直至完成或阻塞
        1. 不利于短进程和I/O密集型
        2. 利于长进程和CPU密集型
      2. RR(轮转)
        1. 固定时间片,按照提交顺序各执行一个时间片
        2. 平均周转时间可能长但是,响应时间短
        3. 不利于I/O密集型(为解决这个茅盾提出了虚拟轮转法,即因为I/O而阻塞的进程进入辅助队列,辅助队列的优先级高于就绪队列,但他运行的时间只能是上次剩下的时间而不是一个时间片)
      3. SPN(最短进程优先)
        1. 预期最短的进程先运行,直至阻塞或完成
        2. 利于短进程
        3. 不利于长进程和紧迫任务
        4. 为预测CPU用时,有指数平均法预测Tn+1 = aTn+(1-a)Tn,其中Tn为上一次CPU实际用时,a为指数
      4. SRT最短剩余时间优先
        1. 预计运行时间比当前进程的剩余运行时间更短时抢占
      5. HRRN(最高响应比优先)综合FCFS和SPN
        1. 当前进程阻塞或完成时,计算所有就绪进程响应比(该时刻的带权周转时间)
      6. MF(反馈/多级反馈)
        1. 综合了FCFS,和RR(最后一条队列是RR)
        2. 分为几个时间片序列,一开始都在第1条队列,每个进程运行完一个时间片被抢占就降到下一个就绪队列,时间片更长,优先级变低
      7. 优先权调度
        1. 根据优先级,分为可抢占和不可抢占
          1. 静态优先级:优先级保持不变,可能导致饥饿
          2. 动态优先权:根据老化(等待时间延长)提高优先级,根据执行时间延长,降低优先级
      8. 几种调度算法的比较
        1. FCFS简单
        2. RR 公平
        3. SPN优于RR
        4. SRT效率优于SPN
        5. HRRN介于FCFS和SPN中
        6. FB带权周转时间最短

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值