Linux系统中/proc/cpuinfo的processor字段是每个逻辑处理核的唯一标识,编号从0开始递增。数量等于物理CPU个数乘每颗核心数,启用超线程时再乘2。结合physicalid与coreid可区分物理CPU和物理核心,相同coreid而processor不同表示超线程拆分出的逻辑核。
先明确一点:在 Linux 系统的 /proc/cpuinfo 里,processor 字段是区分系统中每一个逻辑处理核的唯一标识。编号从 0 开始,依次递增,0、1、2……直到覆盖系统中所有的逻辑 CPU 资源。

长期稳定更新的攒劲资源: >>>点此立即查看<<<
processor 编号就像是每个逻辑处理器的“身份证号”。无论是物理核心,还是通过超线程技术虚拟出来的逻辑核心,每个逻辑 CPU 都会获得一个独一无二的编号。举例说明:单核 CPU 只有一个逻辑核心,那么 processor 编号就是 0;双核 CPU 则有两个逻辑核心,编号分别是 0 和 1。
processor 的编号数量等于物理 CPU 的核心数。例如一颗单核单线程的 CPU,只有 processor 0 这一个编号。processor 编号就是 0 到 3,每个编号对应一个物理核心。processor 的总数量等于物理 CPU 个数 × 每颗物理 CPU 的核心数 × 2。举例说明,假如有 2 颗物理 CPU,每颗 4 核且支持超线程,那么 processor 的编号范围就是 0 到 15,共 16 个逻辑核心。也就是说,每个物理核心在这里被分成两个逻辑核心。要读懂完整的硬件拓扑,仅看 processor 还不够,需要将其与 physical id(物理 CPU 封装编号)以及 core id(物理核心编号)结合起来分析:
physical id 相同的 processor,都归属于同一颗物理 CPU。processor 的 physical id 相同且 core id 也相同,则说明它们来自同一个物理核心——超线程技术把这个核心拆分成了多个逻辑核心,因此它们的 core id 相同,但 processor 编号不同。举例说明:如果在 /proc/cpuinfo 中看到 physical id 有 0 和 1(表示 2 颗物理 CPU),core id 有 0、1、2、3(每颗 4 核),并且系统支持超线程,那么 processor 的编号就会是 0 到 15(2×4×2)。此时 processor 0 和 processor 8 实际上同属于第一颗物理 CPU 的第 0 个核心——只是超线程将同一个核心分成了两个逻辑核心而已。
侠游戏发布此文仅为了传递信息,不代表侠游戏网站认同其观点或证实其描述