0

CFS 调度程序使用红黑锁来保存要调度的进程,我不确定一个 CPU 内核是否存在全局树或一棵树?我认为后者更有效,但我找不到任何证据。

4

1 回答 1

0

每个 CPU 组(结构 sched_group)有一个 CFS 运行队列(实现为红黑树)。每个 CPU 组包含一个处于 SMP 模式(对称多处理)的物理 CPU,因此每个 CPU 有一个 CFS 运行队列。

您可以通过显示 /proc/sched_debug(如果您的内核已使用 CONFIG_SCHED_DEBUG 编译)来查看有关每个 CPU 的这些运行队列的一些信息:cfs_rq[0]、cfs_rq[1] 等。

sched-domains.txtsched-design-CFS.txt中的一些细节

于 2021-11-11T11:02:02.557 回答