为什么我在 vmware fusion 下启动 Linux 会出现几秒钟的延迟?

为什么我在 vmware fusion 下启动 Linux 会出现几秒钟的延迟?

在 VMWare Fusion 7.1.0 下启动 Ubuntu 14.04 (Linux 3.13.0) 时,启动速度比我预期的要慢。特别是,启动完成后,查看时间戳,dmesg在有关的消息旁边显示一些长时间的停顿(2 秒以上)ACPI。我怎样才能让它慢一点?它是否在那些停顿中做了我不需要并且可以禁用/提示的事情?

这是第一次暂停(===>约 5 秒),在它之前有一个小暂停(--->约 600 毫秒):

[    0.145333] ACPI: bus type PCI registered
[    0.145335] acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
[    0.145489] PCI: MMCONFIG for domain 0000 [bus 00-7f] at [mem 0xf0000000-0xf7ffffff] (base 0xf0000000)
[    0.145490] PCI: MMCONFIG at [mem 0xf0000000-0xf7ffffff] reserved in E820
[    0.151776] PCI: Using configuration type 1 for base access
[    0.153045] bio: create slab <bio-0> at 0
[    0.154170] ACPI: Added _OSI(Module Device)
[    0.154172] ACPI: Added _OSI(Processor Device)
[    0.154173] ACPI: Added _OSI(3.0 _SCP Extensions)
[    0.154173] ACPI: Added _OSI(Processor Aggregator Device)
[    0.163605] [Firmware Bug]: ACPI: BIOS _OSI(Linux) query ignored
---> 0.762966] ACPI: Interpreter enabled
[    0.762980] ACPI Exception: AE_NOT_FOUND, While evaluating Sleep State [\_S2_] (20131115/hwxface-580)
[    0.762985] ACPI Exception: AE_NOT_FOUND, While evaluating Sleep State [\_S3_] (20131115/hwxface-580)
[    0.762994] ACPI: (supports S0 S1 S4 S5)
[    0.762996] ACPI: Using IOAPIC for interrupt routing
[    0.763031] PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug
[    0.778294] ACPI: No dock devices found.
===> 5.789452] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-7f])
[    5.789463] acpi PNP0A03:00: _OSC: OS supports [ExtendedConfig ASPM ClockPM Segments MSI]
[    5.789741] acpi PNP0A03:00: _OSC: platform does not support [AER]
[    5.789996] acpi PNP0A03:00: _OSC: OS now controls [PCIeHotplug PME PCIeCapability]

以下是下一个暂停(===>约 2.5 秒):

[    5.880797] ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15)
[    5.880852] ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15)
[    5.880904] ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15)
[    5.880956] ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15)
===> 8.417603] ACPI: Enabled 2 GPEs in block 00 to 0F
[    8.417615] ACPI: \_SB_.PCI0: notify handler is installed
[    8.418094] Found 1 acpi root devices
[    8.418615] vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none

接下来(==>约 2.1 秒),显然扫描设备:

[    8.468367] pnp 00:09: Plug and Play ACPI device, IDs PNP0700 (active)
[    8.468505] system 00:0a: [io  0xfce0-0xfcff] has been reserved
[    8.468507] system 00:0a: [mem 0xf0000000-0xf7ffffff] has been reserved
[    8.468508] system 00:0a: [mem 0xfe800000-0xfe9fffff] has been reserved
[    8.468510] system 00:0a: Plug and Play ACPI device, IDs PNP0c02 (active)
==> 10.526525] pnp: PnP ACPI: found 11 devices

答案1

如上所述在 Arch Linux wiki 上,这似乎与对正在运行的机器的热添加内存的支持有关。如果您不需要此功能(我不需要),您可以在文件中使用以下行禁用它.vmx(其中可能已经有"TRUE";将其更改为"FALSE")。

mem.hotadd = "FALSE"

这缩短了我的启动时间 10 秒,从启动加载程序启动 ubuntu 到图形化 Unity 桌面准备就绪(我的用户自动登录),总共只用了 10 秒。在这里,您可以看到上面的最后一次延迟(===>)发生在 1 秒标记以下之后的消息!

[    0.945859] pnp 00:09: Plug and Play ACPI device, IDs PNP0700 (active)
[    0.945996] system 00:0a: [io  0xfce0-0xfcff] has been reserved
[    0.945998] system 00:0a: [mem 0xf0000000-0xf7ffffff] has been reserved
[    0.946000] system 00:0a: [mem 0xfe800000-0xfe9fffff] has been reserved
[    0.946001] system 00:0a: Plug and Play ACPI device, IDs PNP0c02 (active)
===> 0.948847] pnp: PnP ACPI: found 11 devices

相关内容