4. 调度循环(Scheduler Cycle)

持续进行“任务执行 + 中断事件”的实时决策闭环

核心定义

调度循环是 HRTOS 的核心控制闭环,用于在任务执行流与中断事件流之间持续做出调度决策。

它不是一次性算法,而是持续运行的实时决策系统。

Scheduler cycle is a continuously running real-time decision loop.

1. 系统状态采样

调度器首先采样系统状态:

任务状态 / 中断标志 / 资源锁 / 时间约束窗口

用于构建当前决策输入空间。

2. 可执行集合构建

从所有任务中筛选当前可执行集合(Ready Set)。

条件:非阻塞、资源满足、未违反调度约束。

3. 调度决策计算

在 Ready Set 中选择执行任务。

“最优”在 RTOS 中意味着:

✔ 满足时间约束
✔ 满足优先级规则
✔ 保持系统确定性

本质是约束决策问题,而非排序问题。

4. 上下文切换

保存当前任务状态并切换执行目标任务。

必须满足:切换时间有界且可预测,不引入随机延迟。

5. 中断融合与再调度

中断可能随时插入调度循环。

调度器必须支持:

✔ 中断感知
✔ 即时重计算
✔ 抢占式调度

因此调度循环是动态重计算系统。

语义总结

调度循环不是算法,而是持续运行的实时决策闭环。

它连接执行流与中断流,是RTOS时间模型的核心控制器。

The scheduler cycle is a real-time decision loop connecting execution and interrupt flows.

相关阅读

System View

返回总览

上一篇

中断流模型 ←

下一篇

内存视图模型 →

扩展

执行流模型
任务生命周期