为什么要在VirtualBox中启用IO APIC?


32

在VirtualBox中检查“启用IO APIC”选项有什么好处?

当我在google上找不到任何关于优势的信息时,有两个明显的劣势。首先,如果在安装后将其禁用,它将破坏较旧的Windows VM。其次,它降低了VM性能。但是,我注意到在安装Ubuntu 64bit时默认启用它。

Answers:


28

这是VirtualBox 文档的报价:

启用I / O APIC

高级可编程中断控制器(APIC)是一种较新的x86硬件功能,近年来已取代了旧式的可编程中断控制器(PIC)。使用I / O APIC,操作系统可以使用16个以上的中断请求(IRQ),因此避免了IRQ共享,从而提高了可靠性。

注意:对于64位客户机操作系统,尤其是Windows Vista,需要启用I / O APIC。如果要在一个虚拟机中使用多个虚拟CPU,则也需要这样做。

但是,对于Windows以外的某些操作系统,对I / O APIC的软件支持一直不可靠。另外,使用I / O APIC会稍微增加虚拟化的开销,因此会稍微降低客户机OS的速度。

警告:从Windows 2000开始的所有Windows操作系统都根据I / O APIC是否可用安装不同的内核。因此,与ACPI一样,在安装Windows来宾操作系统之后,不得关闭I / O APIC。但是,安装后将其打开将无效。

另外,您可以关闭VirtualBox默认提供给来宾操作系统的高级配置和电源接口(ACPI)。ACPI是当前的行业标准,允许操作系统识别硬件,配置主板和其他设备并管理电源。由于所有现代PC都具有此功能,并且Windows和Linux已经支持该功能多年,因此VirtualBox中也默认启用该功能。可以在命令行上关闭它。请参阅“ VBoxManage Modifyvm”一节。


5
您能解释一下最后一段吗?关闭ACPI的好处是什么?
马修·弗拉申

@MatthewFlaschen:你把这些话从我脑海中遗忘了。
Davi Lima

10

如果物理机具有IO APIC,则在将物理机迁移到虚拟机时可能需要它。大多数现代机器都可以。

在现代物理PC或VMware上进行标准安装通常会导致选择Halaacpi.dll,因为当今大多数系统都具有IO APIC,而VMware默认选择对其进行虚拟化(VirtualBox禁用了IO APIC,因为虚拟化的成本比虚拟机高。标准PIC)。

http://www.virtualbox.org/wiki/Migrate_Windows


2
另一个优点是,它允许您为来宾VM分配多个虚拟处理器。
Goyuix

4

不幸的是,我有一台只有奔腾D处理器的旧机器。我在Fedora下运行的VirtualBox太可怕了。我在互联网上搜寻了任何可以改善性能的内容。我找到了一篇文章,该文章显示了如何手动禁用APIC IO,并且在完成该过程之后,我对这样做所获得的显着改进(速度提高了一倍)感到惊讶。

在具有3G内存的HP / Compaq dc7700上运行Fedora Core 14,运行Virtualbox版本3.2.10 r66523


0

尝试从原始的物理映像中获取Acronis还原的映像以在Vbox中启动-(XPSP3)-(每次启动时仅显示“未正确关闭”消息...每次启动),所以我决定选择IO APIC选项(设置-系统-主板-扩展功能-选择启用IO APIC)-不真正知道其功能在Vbox中。一旦选择并重新启动,机器就会启动并正常运行。

希望这可以帮助。


-1

由于我的机器不支持APIC(主机是win 8.1 64位,来宾是Oracle Linux 64位),我遇到了系统恐慌,无法完全初始化客户机。

当我将来宾系统中的CPU数量从2X更改为1X(总数为4X)时,我就能够完全加载来宾计算机。


当然,您应该只启用IO APIC。没有充分的理由禁用此功能。
迈克尔汉普顿

拒绝投票,因为这似乎无法回答问题或对讨论没有任何帮助。
Andrew Schulman 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.