我的电脑配有i5-4300U处理器。它有4个逻辑处理器。
最大cpu名称为\_PR.CPU3
:
根据ACPI规范,其中一个ACPI表,DSDT表(区分系统描述表)应该描述我的平台。所以我使用RW Everything在我的计算机上转储ACPI表。
在DSDT中,我看到了:
DefinitionBlock ("DSDT.AML", "DSDT", 0x01, "LENOVO", "TP-GJ ", 0x00002410)
{
Scope(\_PR)
{
Processor(CPU0,0x01,0x00001810,0x06) {}
Processor(CPU1,0x02,0x00001810,0x06) {}
Processor(CPU2,0x03,0x00001810,0x06) {}
Processor(CPU3,0x04,0x00001810,0x06) {}
Processor(CPU4,0x05,0x00001810,0x06) {}
Processor(CPU5,0x06,0x00001810,0x06) {}
Processor(CPU6,0x07,0x00001810,0x06) {}
Processor(CPU7,0x08,0x00001810,0x06) {}
}
所以看起来DSDT声称8个处理器,这似乎与我的机器不匹配。而更奇怪的是,它仍然可以工作。
这里发生了什么?
答案 0 :(得分:1)
我可以收集的额外CPU表的原因是因为你的i5 cpu有2个超线程的逻辑核心,相当于4个核心,这表明你的系统也有i7 cpu选项,有4个逻辑核心超线程,这将是等于8个核心。
例如。我正在运行一个带有2x Xeon E5-2650 v2 CPU的系统,我的DSDT中的CPU范围包含4个SCK(SCK0 SCK1 SCK2 SCK3)定义和32个CPU定义,每个定义总共128个CPU定义,目前只有32个是使用(每个CPU 16个或SCK0和SCK1定义中16个),其余部分根据系统当前可访问的核心数量动态禁用。您的系统就是这种情况。