目录
常见的任务调度机制主要有时间片调度算法(时分式)、优先级调度算法(抢占式)和基于优先级的时间片调度算法。
1、时间片调度算法
时间片调度算法指的是操作系统先让某个任务运行一个时间片(多个时钟节拍),然后再切换给另一个任务,这种算法保证每个任务都能够轮流占有处理器。因为不是在每个时钟节拍都做任务调度,对处理器资源的消耗又做到了最少。
时间片调度算法缺点是在任务占有处理器的时间段内,即使是有更紧急的任务就绪,也不能立刻执行它。
时间片调度算法如下所示:
- 假设任务1时间片长度为4,任务2时间片长度为8,任务3时间片长度为6;
- T0时刻任务1得到运行。
- T1时刻任务1时间片结束,本轮运行结柬,任务2开始运行;
- T2时刻任务2时间片结束,本轮运行结束,任务3开始运行;
- T3时刻任务3时间片结束,本轮运行结束,任务1开始新一轮运行。