Domyślnie qemu-system-x86_64
robi emulacji , nie wirtualizacji. Emulacja jest powolna i intensywna dla procesora - możesz to zobaczyć po uruchomieniu top
, co pokaże twój procesor na poziomie prawie 100%. Właśnie uruchomiłem Xubuntu 14.04 za pomocą qemu-system-x86_64
mojego systemu, a uruchomienie systemu na pulpicie zajęło 10 minut. Ubuntu zwykle ukrywa informacje o rozruchu, dlatego widzisz czarny ekran (lub inne artefakty graficzne spowodowane zmianą rozdzielczości BIOS-u). Jeśli usuniesz splash quiet
i dodasz debug
parametry jądra, zobaczysz, co robi w tym czasie.
Prawdopodobnie chcesz uruchomić, qemu-system-x86_64 -enable-kvm
aby włączyć obsługę wirtualizacji sprzętu.
qemu-system-x86_64 -enable-kvm -m 1024 -cdrom /host/iso/ubuntu-13.10-desktop-amd64.iso -name mac -hda ~/ubuntu
Od man qemu-system-x86_64
:
-enable-kvm
Enable KVM full virtualization support. This option is only available
if KVM support is enabled when compiling.
(Może się zdarzyć, że ludzie polecający program kvm
z pakietu qemu-kvm
. kvm
To tylko skrypt, który robi exec qemu-system-x86_64 -enable-kvm "$@"
)
KVM wykorzystuje wirtualizację sprzętową zamiast symulacji, dzięki czemu działa znacznie szybciej. Wymaga procesora obsługującego sprzętowe rozszerzenia wirtualizacji (VT-x dla Intela lub AMD-V dla AMD), które ma większość nowoczesnych systemów komputerowych.
Dzięki wirtualizacji procesor faktycznie wykonuje nieprzetworzony wykonywalny kod binarny z systemu-gościa. Wirtualizacja jest szybka, ale ma ograniczenia polegające na tym, że system operacyjny hosta i system gościa muszą być kompatybilne binarnie. W przypadku emulacji kod binarny systemu-gościa jest przepisywany w celu uruchomienia na procesorze hosta. Jest powolny, ale ma tę zaletę, że można uruchomić system gościa skompilowany dla innej architektury procesora (np. Obraz QEMU dla Armel Debiana wyjaśnia, jak uruchomić Debian ARM na komputerze PC).
Inną popularną opcją wirtualizacji jest VirtualBox .
-vga [std|vmware|cirrus|qxl]
. Zobaczman qemu-kvm
więcej szczegółów.