Advertisement

操作系统(8)—— CPU调度(调度原则、调度算法、实时调度及多处理器优先级反转)

阅读量:

一、背景知识

1. 上下文切换:

  • 实现从一个进程或线程到另一个进程或线程的CPU任务切换;
    • 然而,在切换之前需要对当前进程或线程的状态进行保护,即将其在PCB/TCP中所保存的执行上下文(即CPU的状态信息)进行存储;
    • 在完成任务切换时,必须读取下一个进程或线程对应的上下文信息以继续执行。

2. CPU调度:

  • 从就绪队列中选择一个进程或线程,作为CPU即将执行的下一个任务单元;
    • 此过程需要调度程序(即负责选择进程或线程的内核函数)的参与;
    • 需要关注的关键问题是调度发生的时机(当系统状态发生转换时,通常会触发调度操作)。

3. 内核运行调度程序的条件(满足其一即可)

  • 一个进程由运行状态转变为等待状态
    • 某一进程被终止执行

4. CPU调度方式(一般指用户态;内核态也可能涉及到是否抢占)

  • 非抢占式调度
    • 调度机制需在事件完成之后才能进行操作(存在效率低下问题,通常不被采用);

    • 支持抢占式调度

      • 在中断信号得到响应后,调度机制开始执行;
      • 正在运行的进程状态会被切换至就绪状态,或处于等待状态的进程被转移至就绪状态;
      • 正在执行的进程可能被强制移出当前运行环境。

二、调度

全部评论 (0)

还没有任何评论哟~