时间片
用于描述调度策略分配给任务的执行时间额度或时间片数量。
时间片调度通过为任务分配处理器执行时间,控制任务持续运行的时间范围。 HRTOS 将调度模式选择与 Tick 配置结合起来, 为实时优先级调度和用户定义的通用调度策略提供不同的运行方式。
时间片轮转调度是一种以执行时间为依据组织任务运行的调度方法。 当任务持续处于可运行状态时,时间片机制可以为调度器提供切换任务的时间依据。
在 HRTOS 中,时间片轮转不能脱离调度模式单独理解。 系统的调度策略选择会影响任务的运行顺序, 而 Tick 配置则与时间片调度的时间粒度和分配有关。
用于描述调度策略分配给任务的执行时间额度或时间片数量。
决定内核采用哪种调度策略处理任务之间的运行关系。
HRTOS 提供调度模式切换接口。 使用时应区分“切换实时与通用调度模式”和“选择默认调度器或用户调度策略”这两个操作。
采用 HRTOS 的默认实时调度策略,以任务优先级为重要调度依据。 高优先级任务的调度与抢占行为应结合实际内核规则理解。
采用时间片轮转相关的通用调度策略。 任务获得的时间片数量与优先级相关,不能据此认为所有任务拥有相同的执行额度。
接口声明与模式含义按项目提供的定义展示。
这两个接口的职责并不应被简单视为同一件事。 修改调度模式或调度器选择前,应根据当前系统配置确认调用时机、 初始化要求和两个接口之间的约束。
根据 HRTOS 提供的通用模式说明,时间片分配与任务优先级相关: 优先级越高,分配的时间片越多;最低优先级也至少分配一个时间片。
这里描述的是时间片数量的分配关系,不应直接理解为任务每次连续运行的时间 一定与优先级成简单线性比例。实际运行时间还取决于 Tick 粒度、 调度触发条件、任务状态以及其他内核事件。
Tick 配置是 HRTOS 调度初始化的重要部分。 时间片数量和 Tick 参数需要结合目标平台与系统配置设置; 时间统计接口则可用于获取运行时间信息和辅助分析调度行为。
该接口属于系统调度初始化路径。 参数单位、有效范围以及重复调用行为应以 HRTOS 对应版本的头文件和实现为准。
根据项目提供的接口说明,该接口用于获取系统 Tick 计数的高、低部分, 可作为调度分析、时间统计和性能测量的基础。 调用方应使用与实际接口定义一致的变量类型和数据解释方式。
该接口用于获取系统开机运行时间,单位为毫秒, 可用于运行状态监控、运行时长记录和健康检测。 使用时应注意返回类型的取值范围以及计数回绕问题。
下图用于说明时间片调度的一般概念流程。 它不是对 HRTOS 内核内部队列操作或每一条代码路径的逐行描述。
时间片到期、任务状态变化或主动让出处理器,都可能与调度行为有关。 具体情况下是否切换任务,以及如何确定下一个任务, 应以当前调度模式和内核实现为准。