【发布时间】:2016-10-04 03:11:49
【问题描述】:
我正在开发将在带有PREEMPT_RT 补丁的 Linux 上运行的实时软件。虽然这将让我通过使用 Linux 实时调度程序(SCHED_RR 或 SCHED_FIFO)获得实时性能,但我不确定我应该为我的线程使用什么优先级值。在我的系统上,当我查看看到的优先级时(仅显示带有RTPRIO 的进程):
$ ps -e -o cmd,pri,rtprio
CMD PRI RTPRIO
[sirq-high/0] 89 49
[sirq-timer/0] 89 49
[sirq-net-tx/0] 89 49
[sirq-net-rx/0] 89 49
[sirq-block/0] 89 49
[sirq-block-iopo] 89 49
[sirq-tasklet/0] 89 49
[sirq-sched/0] 89 49
[sirq-hrtimer/0] 89 49
[sirq-rcu/0] 89 49
[posixcputmr/0] 139 99
[events/0] 41 1
[irq/17-systemac] 90 50
[irq/19-watchdog] 90 50
[irq/18-eth0] 90 50
[irq/16-serial] 90 50
我有两个问题:
- 这些
sirq、irq、posixcputmr任务是什么?内核线程? - 我应该以什么优先级运行我的软件?我应该以比大多数系统线程更高的优先级(>50 甚至 99)还是更低(
【问题讨论】:
标签: linux process real-time thread-priority