我正在配置一些 VMware 和 Virtualbox VM,包括 32 位和 64 位,并且所有启动命令都以 开头/install/vmlinuz noapic
。
在网上搜索有关 APIC 等的信息并不能给我何时使用 APIC 的明确答案。
它是否取决于机器安装的 CPU 核心数量?
在虚拟机上使用 APIC 时是否应禁用?
它是否取决于 CPU 支持的特殊功能?
它是 32 位还是 64 位操作系统/机器有关系吗?
APIC 通常是一件坏事吗,因为仍然不稳定?启动命令中的
设置是否重要?或者虚拟器是否会覆盖此设置?noapic
我读到过,当 APIC 开启时,可能会出现一些与休眠/启动等相关的问题,但另一方面,我也读到过,如今的现代机器/操作系统能够很好地支持 APIC。
非常感谢您对此的反馈!
答案1
现在是 2013 年,几乎没有理由禁用 APIC,但有很多理由启用它。
15 年前,当 APIC 刚刚问世且尚未被各硬件供应商很好地实施时,情况可能并非如此,但很长一段时间以来,情况已经不再如此。
微软的解释(来自 2003 年!)可能是我能给你的最好的信息了,我很惊讶你没有找到它,因为它是从维基百科的 APIC 页面链接过来的。
从本质上讲,APIC 是对 20 世纪 80 年代的旧 PC 中断系统的重大改进,它允许更多中断并减少中断共享。这意味着更好的性能和使用更多外围设备的能力,无论是物理机器还是虚拟机器,这都是正确的。
经验法则是:APIC 应始终处于启用状态,除非有特殊原因需要禁用它,例如使用古老的硬件,或者使用非 APIC HAL 虚拟化旧的 NT/2000 系统。