16.2. 实时内核中的调度程序节流


实时内核包含一个保护机制,用于启用分配给实时任务使用的带宽。保护机制称为实时调度程序节流。

实时节流机制的默认值定义了实时任务可以使用 95% 的 CPU 时间。剩余的 5% 将专用于非实时任务,例如在 SCHED_OTHER 和类似调度策略下运行的任务。务必要注意,如果单个实时任务占用 95% 的 CPU 时间插槽,则该 CPU 上的剩余实时任务将不会运行。只有非实时任务使用剩余的 CPU 时间。默认值可以有以下性能影响:

  • 实时任务最多有 95% 的 CPU 时间,这可能会影响其性能。
  • 实时任务不允许运行非实时任务来锁定系统。

实时调度程序节流由 /proc 文件中的以下参数控制:

/proc/sys/kernel/sched_rt_period_us 参数
定义在 CPU 带宽的 100% 中的周期(微秒)。默认值为 1,000,000 HEKETIs,即 1 秒。必须仔细考虑对 period 值的更改,因为一个期限值非常高或低可能会导致问题。
/proc/sys/kernel/sched_rt_runtime_us 参数
定义可用于所有实时任务的总带宽。默认值为 950,000 HEKETIs (0.95 s),这是 CPU 带宽的 95%。将值设为 -1 将配置实时任务,使其最多使用 100% 的 CPU 时间。只有当实时任务经过精心设计且没有明显的注意事项(如未绑定的轮询循环)时,这才有效。
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部