美文网首页基础原理
CPU调度(一)

CPU调度(一)

作者: 啦啦哇哈哈 | 来源:发表于2018-10-14 21:15 被阅读34次

相关基本概念

  • CPU利用率 = CPU忙时 / 运行总时间
    引入多道程序设计,让多个进程竞争使用资源,目的就是为了提高计算机的资源使用率,尤其是CPU利用率。
    竞争使用资源,自然就存在了资源分配的问题。
  • CPU区间 - I/O区间 的循环
    所有进程执行都包括CPU操作+I/O操作,都呈现出这样的循环。CPU burst和I/O burst翻译成CPU区间和IO区间。


    CPU IO burst cycle
  • CPU调度器




    调用scheduler的时机,通常有:

    • 某一进程从运行状态转为等待状态(如遇到了I/O请求,或调用wait等待一个子线程的终止)
    • 某一进程从运行状态切换到就绪状态(出现中断,或者被某个超高优先级进程抢占)上图中少了这个箭头
    • 某一进程从等待状态转为就绪状态(IO之后回到就绪队列,当然也有可能这个进程优先级很高等待完了立刻得到CPU)
    • 某一进程终止

切换CPU的情形不止以上所述的四种情形。还有其他调用scheduler的情形有好多好多。

不过所有情形可以有以下的分类:

  1. 非抢占式nonpreemptive
    拥有CPU的进程自愿交出CPU,也就是上面的第一种(他需要新的资源,如IO)和第四种(结束了)情况。
  2. 抢占式preemptive
    如果非自愿交出CPU,就是抢占式,如第二种(另一个高优先级来了被迫交出CPU)和第三种(进到就绪队列了他就想要资源,那对于正在拥有CPU的进程就是被迫的)情形。
  • CPU分配器Dispatcher
    在Scheduler时候提到,调度器是先从就绪队列中选取一个进程,接下来再把CPU分配给这个进程。而第二步分配CPU的动作也可以由这里的dispatcher来完成,操作的内容通常包括:
    • switching context
    • kenel mode ——> user mode (CPU调度一定是在内核态里面做的,用户进程执行一定在用户态里面,所以一定涉及mode的切换)
    • 跳转至用户程序中PC寄存器所指示的位置

分配延迟:CPU分配器暂停前一进程,启动后一进程所经历的时间。

  • CPU调度器的追求指标
    • CPU利用率(CPU utilization)
    • 吞吐率(Throughput)——单位时间内完成执行的进程数
    • 周转时间(Turnaround time)——执行某一进程所耗用的CPU累积时间,从进程提交到进程完成的所有时间段之和,包括等待存入内存、在就绪队列等待、在CPU上执行和IO执行
    • 等待时间(Waiting time)——某一进程等待在就绪队列里面的累计时间
    • 响应时间(Response time)——某一进程从发出调度请求(比如鼠标一动按了保存按钮请求保存文件),到其得到CPU调度器响应(页面有反应了,即文件保存成功或者失败),其间所经历的时间

这章的研究问题就是,有限的一个CPU怎样分配给就绪队列里的这些进程,使得CPU利用率最高,吞吐量最高,周转时间、等待时间、响应时间最短。

相关文章

  • 操作系统 处理器调度

    CPU调度 什么是CPU调度?为什么要进行CPU调度?如何进行CPU调度?对于多道程序来说(单片系统)CPU只有一...

  • CPU调度

    CPU调度 基本概念 CPU调度在讨论普通调度概念时使用进程调度,特别指定为线程概念时使用线程调度 CPU-I/O...

  • 6、处理器调度1(操作系统笔记)

    一、CPU调度的相关概念 1.1 cpu调度 其任务是控制、协调进程对cpu的竞争,即按一定的调度算法从就绪队列中...

  • 操作系统知识点(五)——CPU调度

    CPU调度 背景 CPU调度从就绪队列中挑选一个进程/线程作为CPU将要运行的下一个进程/线程调度程序:挑选进程/...

  • CPU调度(一)

    相关基本概念 CPU利用率 = CPU忙时 / 运行总时间引入多道程序设计,让多个进程竞争使用资源,目的就是为了提...

  • Linux - 进程调度

    介绍 进程调度算法也称 CPU 调度算法,毕竟进程是由 CPU 调度的。 当 CPU 空闲时,操作系统就选择内存中...

  • 长期调度-中期调度-短期调度的差异

    短期调度程序:也称为CPU调度程序 作用:从准备执行的进程中选择进程分配到CPU 因为短期调度程序经常要为CPU选...

  • Linux I/O 调度方法及读写测试

    操作系统的调度有 CPU调度 CPUschedulerIO调度 IOscheduler IO调度...

  • (1)进程调度算法

    也称 CPU 调度算法:CPU空闲时,操作系统给内存中「就绪」进程分配 CPU 1、什么时候会发生CPU调度?进程...

  • CPU调度

    原文地址: https://qjm253.cn/2018/06/29/os_03/ CPU调度的基本概念主要目标:...

网友评论

    本文标题:CPU调度(一)

    本文链接:https://www.haomeiwen.com/subject/chzzaftx.html