操作系统(8)—— CPU调度(调度原则、调度算法、实时调度及多处理器优先级反转)
发布时间
阅读量:
阅读量
一、背景知识
1. 上下文切换:
- 实现从一个进程或线程到另一个进程或线程的CPU任务切换;
- 然而,在切换之前需要对当前进程或线程的状态进行保护,即将其在PCB/TCP中所保存的执行上下文(即CPU的状态信息)进行存储;
- 在完成任务切换时,必须读取下一个进程或线程对应的上下文信息以继续执行。
2. CPU调度:
- 从就绪队列中选择一个进程或线程,作为CPU即将执行的下一个任务单元;
- 此过程需要调度程序(即负责选择进程或线程的内核函数)的参与;
- 需要关注的关键问题是调度发生的时机(当系统状态发生转换时,通常会触发调度操作)。
3. 内核运行调度程序的条件(满足其一即可)
- 一个进程由运行状态转变为等待状态
- 某一进程被终止执行
4. CPU调度方式(一般指用户态;内核态也可能涉及到是否抢占)
- 非抢占式调度
-
调度机制需在事件完成之后才能进行操作(存在效率低下问题,通常不被采用);
-
支持抢占式调度
- 在中断信号得到响应后,调度机制开始执行;
- 正在运行的进程状态会被切换至就绪状态,或处于等待状态的进程被转移至就绪状态;
- 正在执行的进程可能被强制移出当前运行环境。
-
二、调度
全部评论 (0)
还没有任何评论哟~
