Wie wähle ich die Paravirtualisierungsoberfläche in VirtualBox aus?


89

Bei einem Windows 8-Hostsystem (Intel Core i5) und einem Linux-Fedora-Host möchte ich die optimale Einstellung für die paravirtuelle Schnittstelle ermitteln.

Optionen sind

  • keiner
  • Standard
  • Erbe
  • minimal
  • Hyper-V
  • KVM

Diese Seite schlägt vor, dass die Auswahl nur auf dem Gastsystem basiert:

Die größte Änderung in VirtualBox 5.0 ist die Einführung der Unterstützung für Paravirtualisierung, die den unterstützten Gastbetriebssystemen (Hyper-V unter Windows und KVM unter Linux) eine höhere Leistung und Genauigkeit verleiht.

Ist das korrekt?

Antworten:


98

Das VirtualBox-Handbuch im Abschnitt Paravirtualisierungsanbieter erklärt sehr deutlich, wann welche verwendet werden sollten (Hervorhebung hinzugefügt):

  • Minimal: Kündigt das Vorhandensein einer virtualisierten Umgebung an. Meldet außerdem die TSC- und APIC-Häufigkeit an das Gastbetriebssystem. Dieser Anbieter ist für die Ausführung von Mac OS X-Gästen obligatorisch.

  • KVM: Präsentiert eine Linux KVM-Hypervisor-Schnittstelle, die von Linux-Kerneln ab Version 2.6.25 erkannt wird. Die VirtualBox-Implementierung unterstützt derzeit paravirtualisierte Uhren und SMP-Spinlocks. Dieser Anbieter wird für Linux-Gäste empfohlen.

  • Hyper-V: Präsentiert eine Microsoft Hyper-V-Hypervisor-Oberfläche, die von Windows 7 und neueren Betriebssystemen erkannt wird. Die VirtualBox-Implementierung unterstützt derzeit paravirtualisierte Uhren, APIC-Frequenzberichte, Gast-Debugging, Gast-Absturzberichte und entspannte Timer-Prüfungen. Dieser Anbieter wird für Windows-Gäste empfohlen.

Die anderen Optionen in der Dropdown-Liste führen die folgenden vboxmanageAktionen aus , wie in den Dokumenten erläutert :

  • Keine : Wenn Sie diese Option noneexplizit angeben, wird die Anzeige von Paravirtualisierungsschnittstellen deaktiviert .

  • Standard : Mit dieser Option defaultwird beim Starten der VM eine geeignete Schnittstelle ausgewählt, die vom Typ des Gastbetriebssystems abhängt. Dies ist die Standardoption, die beim Erstellen neuer VMs ausgewählt wird.

  • Legacy : legacyDiese Option wird für VMs ausgewählt, die mit älteren VirtualBox-Versionen erstellt wurden und eine Paravirtualisierungsschnittstelle auswählen, wenn die VM mit VirtualBox 5.0 oder höher gestartet wird.


6
Beim Testen des KVM-Modus auf meinem Ubuntu-Gast (unter Verwendung von OSX als Host) traten mehrere zeitbezogene Probleme auf, darunter, dass die Uhr etwa doppelt so langsam lief. (Ich würde die Zeit mit ntp einstellen und in 10 Minuten würde die Uhr ungefähr 5 Minuten verzögert sein). Das System lief eigentlich alles langsamer, zB würde das Aufrufen von "sleep 5" viel länger als 5 Sekunden dauern. Derzeit bin ich wieder im "Legacy" -Modus
JBernardo

@JBernardo Hast du den Standardmodus getestet ?
Léo Léopold Hertz 준영

@ LéoLéopoldHertz 준영 Wäre der Standardmodus nicht der gleiche wie der KVM , den sie bereits ausprobiert haben?
Endolith

@JBernardo Normalerweise sollte ntp nicht in einer VM verwendet werden, da es von den Gastdienstprogrammen mit dem Host synchronisiert wird. Es könnte stören.
Bachsau

9

Genauer gesagt, da ich 4.3 migrierte VMs hatte und diese "Legacy" sind, war ich auch an der zu verwendenden Einstellung interessiert, wenn ich VMs von Linux nach Windows oder umgekehrt kopiere:

--paravirtprovider none | default | legacy | minimal | hyperv | kvm: Diese Einstellung gibt an, welche Paravirtualisierungsschnittstelle für das Gastbetriebssystem bereitgestellt werden soll.

  • Wenn Sie keine angeben, wird die Anzeige von Paravirtualisierungsschnittstellen explizit deaktiviert .
  • Die Standardoption wählt beim Starten der VM eine geeignete Schnittstelle aus, die vom Gastbetriebssystemtyp abhängt. Dies ist die Standardoption, die beim Erstellen neuer VMs ausgewählt wird.
  • Die Legacy- Option wird für VMs ausgewählt, die mit älteren VirtualBox- Versionen erstellt wurden und eine Paravirtualisierungsschnittstelle auswählen, wenn die VM mit VirtualBox 5.0 oder höher gestartet wird.
  • Der minimal - Provider ist obligatorisch für Mac OS X Gäste ,
  • kvm - empfohlen für Linux-Gäste
  • und hyperv - empfohlen für Windows-Gäste

Diese Optionen werden unter Abschnitt 10.4, „ Anbieter von Paravirtualisierung “ ausführlich erläutert .

Ab Handbuch Kapitel 8 .

Wenn Sie also VirtualBox unter Linux auf Version 5 aktualisiert haben, wählen Sie einfach kvm oder default , starten Sie VM und prüfen Sie, ob es ordnungsgemäß funktioniert. Wenn ja, belassen Sie einfach die neue Einstellung.

Wenn Sie VMs von Linux nach Windows migrieren / verschieben, empfehle ich die Standardoption , mit der die beste Virtualisierungsschnittstelle automatisch ausgewählt wird.


0

Nur ein paar Cent, basierend auf meinen eigenen Tests.

Ich hatte mit einem Windows 10-Gast getestet, der auf einem Windows 10-Host und einem Linux-Host lief (oder zumindest hatte ich es versucht).

Ganz zu schweigen davon, dass alle von mir verwendeten virtuellen Festplatten nicht veränderbar sind (um identische Tests sicherzustellen).

Auf Windows 10-Hosts wird der Gast normal ausgeführt (möglicherweise etwas langsam), aber er wird gestartet und der Desktop wird angezeigt. Die Paravirtualisierung ist "Standard".

Wenn ich die gleiche virtuelle Maschine auf einem Linux-Host mit Paravirtualisierung "Standard" versuche, bootet der Windows 10-Gast nicht, er bootet, bis sich die Punkte in einem Kreis bewegen, und nach einer Weile friert er ein. Denken Sie daran, alle Festplatten sind unveränderlich.

Aber sobald ich die Paravirtualisierung auf "Heredada" gesetzt habe (es ist auf Spanisch), bootet es und erreicht den Desktop, aber manchmal (denken Sie daran, dass alle Festplatten unveränderlich sind) startet es neu, während ich es zu anderen Zeiten benutzen kann (sehr, sehr langsam). Es muss also irgendwo einen Wettlauf geben, da dies nicht immer der Fall ist.

Übrigens, der Windows-Gast hat keinen Internetzugang, um sicherzugehen, dass bei einem Kaltstart keine Internetverbindung zu einer anderen Funktionsweise führt.

Merken:

  • Alle Festplatten sind unveränderlich
  • Alle werden bei jedem Kaltstart zurückgesetzt
  • Windows-Gast funktioniert nicht immer
  • Mit der Paravirtualisierung auf "default" wird nicht einmal auf einem Linux-Host gebootet, sondern auf einem Windows-Host.
  • Mit der Paravirtualisierung auf "Heredada" bootet es auf einem Linux-Host (aber es ist nicht immer stabil genug, um es zu benutzen)

Ich hatte auch versucht, 2D & 3D (auch PAE / NX) zu aktivieren / deaktivieren, da ich möchte, dass derselbe Gast (virtuelle Festplatten, die von einem Host auf den anderen kopiert werden) auf zwei verschiedenen Hosts stabil ist. Ich möchte auch in der Lage sein, virtuelle Festplatten von einem Host auf einen anderen zu kopieren, nachdem ich ein Update durchgeführt habe. ich verwende keine snapshots, nur unmutable festplatten.

Das ist, was ich gesehen hatte, ich muss mehr Tests mit anderen Paravirtualisierungswerten durchführen, nur für den Fall, dass einer auf dem Linux-Host besser funktioniert. Ich verwende weder MAC noch OS / 2, sondern nur Windows- und Linux-Hosts (beide Hosts befinden sich auf unterschiedlicher physischer Hardware).

VERSION: Windows 10-Gast ist HOME 64Bits und die Version ist 1809.17763.379

Hoffe, dies hilft anderen, teste & teste & teste (besser mit nicht veränderbaren Datenträgern) eine beliebige Kombination von Werten, bis eine funktionierende Kombination gefunden ist. Dies scheint die einzige Möglichkeit zu sein, einen Gast auf verschiedenen Hosts (Windows / Linux) zum Laufen zu bringen! !!

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.