时间片轮转演示(RR Demo)
RR Demo 用于展示HRTOS中的Round Robin调度策略, 通过固定时间片在多个同优先级任务之间进行公平切换。
机制定义
Round Robin = 固定时间片 + 时间片耗尽切换 + 同优先级公平调度
RR调度API: os_switch · os_dispatch_id · os_wait1 · os_delay
调度行为
时间片轮转通常包含以下行为:
任务进入队列
多个同优先级任务进入Ready队列。
分配时间片
调度器为当前任务分配固定执行时间。
时间片耗尽
触发Tick中断并切换下一个任务。
循环执行
任务按照队列顺序持续轮转执行。
RR调度链路
Ready队列 → 时间片计数 → Tick中断 → os_dispatch_id → os_switch → 下一个任务
执行流程
1. 创建任务
初始化多个相同优先级任务。
2. 启动调度器
进入Round Robin调度模式。
3. Tick触发切换
时间片结束后切换任务。
4. 持续轮转
系统持续执行公平调度。
演示代码
// 在这里填入 RR Demo 示例代码
// 例如:round robin / tick / timeslice / scheduler
系统意义
时间片轮转机制可以提升任务执行公平性, 适用于同等级任务共享CPU资源的场景。
内核实现: Round Robin Scheduler · Scheduling Flow