linux – ACPI NMI LINT是什么意思?为什么它会在内核版本中发生变化?

我想了解以下几行的含义

[    0.000000] ACPI: LAPIC_NMI (acpi_id[0x01] dfl dfl lint[0x0])
[    0.000000] ACPI: NMI not connected to LINT 1!
[    0.000000] ACPI: LAPIC_NMI (acpi_id[0x02] dfl dfl lint[0x0])
[    0.000000] ACPI: NMI not connected to LINT 1!
[    0.000000] ACPI: LAPIC_NMI (acpi_id[0x03] dfl dfl lint[0x0])
[    0.000000] ACPI: NMI not connected to LINT 1!
[    0.000000] ACPI: LAPIC_NMI (acpi_id[0x04] dfl res lint[0x6f])
[    0.000000] ACPI: NMI not connected to LINT 1!

为什么倒数第二行的值会在整个内核版本中发生变化?

例如.:
与内核4.9.3它是[0x6f]
内核4.7.8是[0x1f]
等等

解决方法:

既然你没有得到正确的答案,我会尝试提供一个不完整的答案. ACPI是用于发现和配置硬件设备的接口.他们可以使用不可屏蔽中断(NMI)为Linux提供有关关键事件的信息.然后将每个NMI连接到Linux中断.

因此LAPIC_NMI表示本地高级可编程中断控制器不可屏蔽中断. acpi_id [0x01]是该设备的ID.我相信0x01..0x04对应于您的计算机处理器核心.

然后由于某种原因我不明白Linux acpi实现希望NMI连接到第一个Linux中断.在你的情况下,它不是,它可能意味着如果处理器核心生成NMI,它不会被Linux正确捕获.

在实践中,我认为这不重要(但不要引用我)因为机制应该捕获的中断非常罕见.

上一篇:Win10Ubuntu双系统安装常见问题


下一篇:BIOS内部模块详解