处理机的调度

处理机的调度

一、处理机调度概念

  1. 基本概念
    • 出现原因,处理器的数量远远少于进程数量,这样一来所有进程没办法同时处理,这个时候需要确定某种规则来决定这些进程的处理顺序,所以引进调度概念
    • 按照某种算法选择一个进程将处理机分配给它
      例子1,宿舍只有1个厕所,早上几个人都要上厕所,厕所该被谁占
  2. 三个层次
    • 高级调度,又叫作业调度
      按照某种规则,从等候队列中选择合适的作业将其调入内存,并为其创建进程
    • 中级调度,又叫内存调度
      按照某种规则,从挂起队列中选择合适的进程将其数据调回内存
    • 低级调度,又叫进程调度
      按照某种规则,从就绪队列中选择一个进程为其分配处理机
  3. 三层调度的联系、对比
    • 高级调度
      外存->内存
      发生频率最低
    • 中级调度
      外存->内存
      发生频率中等
    • 低级调度
      内存->CPU
      发生频率最高
  4. 补充知识
    • 为减轻系统负载,提高资源利用率,暂时不执行的进程会被调到外存从而变成“挂起态”
    • 七状态模型,在五状态模型的基础上加入了就绪挂起和阻塞挂起两种状态

二、进程调度的时机与方式

  1. 进程调度发生时机
    • 什么时候需要进程调度?
      • 主动放弃
        进程正常终止
        运行过程中发生异常而终止
        主动阻塞,比如等待I/O
      • 被动放弃
        分给进程的时间片用完
        有更紧急的事情需要处理,比如I/O中断
        有更高优先级的进程进入就绪队列
    • 什么时候不能进行进程调度
      在处理中断的过程中,此时是核心态
      进程在操作系统内核程序临界区中
      原子操作过程中,简称原语
  2. 进程调度方式
    • 非剥夺调度方式,也叫非抢占式
      只能由当前运行的进程主动放弃CPU
    • 剥夺调度方式,也叫抢占式
      可以由操作系统剥夺当前进程的CPU使用权
  3. 进程的切换和过程
    • 狭义的调度和切换区别
    • 广义的进程调度包含了选择一个进程和进程切换两个步骤
    • 切换过程
      对原来运行进程各种数据的保存
      对新的进程各种数据的恢复,比如程序计数器、程序状态字、各种数据寄存器等处理机现场信息,这些信息保存在进程控制块PCB,从内存这里读出来放到处理机
    • 重要结论
      进程调度、切换是有代价的,并不是调度越频繁,并发度就越高

三、调度算法的几种评价指标

在这里插入图片描述

四、作业/进程调度算法

归纳了6种调度算法

https://editor.csdn.net/md/?articleId=120076904

几种调度算法(大白话)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值