查找linux内核中CPU的数量

use*_*001 4 linux linux-kernel

我想检测Linux内核中CPU的数量并编写一个sys_call来找到它。

cpuinfo_x86给出了一个 CPU 的特性,cpu_detect 填充了它,但是如何找到要检测的 CPU 数量?

Aru*_*vel 6

使用宏NR_CPUS我们可以找到CPU的数量。该宏不应在 Early_init 序列中使用,因为大多数 NR_CPUS 不会被初始化,因为它是运行时宏。

或者你可以使用num_online_cpus()函数来获取在线CPU的数量。

您可以在标题中找到更多选项include/linux/cpumask.h来查找各种 CPUS 的可用性。