7.3. 配置 SCHED_DEADLINE 参数
Red Hat Enterprise Linux 中的 sched_deadline_period_max_us 和 sched_deadline_period_min_us 参数是 SCHED_DEADLINE 调度策略的内核可调参数。这些参数通过使用此实时调度类来控制任务的最大允许周期(以微秒为单位)。
sched_deadline_period_max_us 和 sched_deadline_period_min_us 一起工作,为 SCHED_DEADLINE 任务的 period 值定义一个可接受的范围。
-
min_us可防止可能使用过量资源的高频率任务。 -
max_us会阻止极长的任务,它们可能会导致其他任务的性能。
使用参数的默认配置。如果需要更改参数的值,您必须在实时环境中配置自定义值前测试它们。
参数的值以微秒为单位。例如,1 秒等于 100000 微秒。
先决条件
- 您的系统必须具有 root 权限。
流程
使用其中一个
sysctl命令临时设置所需的值。要使用
sched_deadline_period_max_us参数,请运行以下命令:# sysctl -w kernel.sched_deadline_period_max_us=2000000要使用
sched_deadline_period_min_us参数,请运行以下命令:# sysctl -w kernel.sched_deadline_period_min_us=100
永久设置值。
对于
max_us,编辑/etc/sysctl.conf并添加以下行:kernel.sched_deadline_period_max_us = 2000000对于
min_us,请编辑/etc/sysctl.conf并添加以下行:kernel.sched_deadline_period_min_us = 100
应用更改:
# sysctl -p
验证
验证
max_us的自定义值:$ cat /proc/sys/kernel/sched_deadline_period_max_us 2000000验证
min_us的自定义值:$ cat /proc/sys/kernel/sched_deadline_period_min_us 100