Wie wählt man die Paravirtualisierungsschnittstelle in VirtualBox aus?

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.

Die Optionen sind

  • keine
  • Standard
  • Vermächtnis
  • 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 von Paravirtualisierungsunterstützung, die höhere Leistung und Zeitgenauigkeit für die unterstützten Gastbetriebssysteme (Hyper-V auf Windows und KVM unter Linux).

Ist das richtig?

Lösung

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

  • Minimal: Meldet das Vorhandensein einer virtualisierten Umgebung. Außerdem meldet er die TSC- und APIC-Frequenz an das Gastbetriebssystem. **Dieser Anbieter ist obligatorisch für die Ausführung aller Mac OS

    X-Gäste.**

  • KVM: Stellt eine Linux KVM Hypervisor-Schnittstelle bereit, die von Linux-Kerneln ab Version 2.6.25 erkannt wird. Die Implementierung von VirtualBox's unterstützt derzeit paravirtualisierte Uhren und SMP-Spinlocks. Dieser Anbieter wird für Linux-Gäste empfohlen.
  • Hyper-V: Bietet eine Microsoft Hyper-V Hypervisor-Schnittstelle, die von Windows 7 und neueren Betriebssystemen erkannt wird. Die Implementierung von VirtualBox's unterstützt derzeit paravirtualisierte Uhren, APIC-Frequenzberichte, Gast-Debugging, Gast-Absturzberichte und entspannte Timer-Checks. Dieser Anbieter wird für Windows-Gäste empfohlen.

Die anderen Optionen in der Dropdown-Liste haben die folgenden Funktionen, wie in den vboxmanage docs erklärt:

  • Keine: Durch die Angabe von "none" wird explizit jede Paravirtualisierungsschnittstelle deaktiviert.
    • Default: Die Option default wählt beim Starten der VM eine geeignete Schnittstelle in Abhängigkeit vom Typ des Gastbetriebssystems. Dies ist die Standardoption, die beim Erstellen neuer VMs gewählt wird. Default;
    • Legacy: Die Option "Legacy" wird für VMs gewählt, die mit älteren VirtualBox-Versionen erstellt wurden, und wählt beim Starten der VM mit VirtualBox 5.0 und neuer eine Paravirtualisierungsschnittstelle.
Kommentare (4)

Let's genauer sein, weil ich 4.3 migriert VMs hatte, und die sind "legacy", auch war ich daran interessiert, welche Einstellung zu verwenden, wenn ich VM von Linux zu Windows oder umgekehrt zu kopieren:

--paravirtprovider none|default|legacy|minimal|hyperv|kvm: Diese Einstellung gibt an, welche Paravirtualisierungsschnittstelle dem Gastbetriebssystem zur Verfügung gestellt werden soll.

  • Die Angabe von keine schaltet explizit die Bereitstellung jeglicher Paravirtualisierungsschnittstelle aus.
  • Die Option Standard wählt beim Starten der VM eine geeignete Schnittstelle abhängig vom Typ des Gastbetriebssystems. Dies ist die Standardoption, die beim Erstellen neuer VMs gewählt wird.
  • Die Option legacy wird für VMs gewählt, die mit älteren VirtualBox-Versionen erstellt wurden und wählt beim Starten der VM mit VirtualBox 5.0 und neuer eine Paravirtualisierungsschnittstelle.
  • Der minimal Anbieter ist zwingend erforderlich 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 in Abschnitt 10.4, "Paravirtualisierungsanbieter", ausführlich erläutert.

Aus Handbuch Kapitel 8.

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

Wenn Sie VMs von Linux nach Windows migrieren/umziehen, empfehle ich die Option default, die automatisch die beste Virtualisierungsschnittstelle auswählt.

Kommentare (0)

Nur ein paar Cents, basierend auf meinen eigenen Tests.

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

Ganz zu schweigen davon, dass alle virtuellen Festplatten, die ich verwende, unveränderbar sind (um identische Tests zu gewährleisten).

Auf Windows 10 Host, der Gast läuft normal (vielleicht ein bisschen langsam), aber es bootet und Desktop angezeigt wird... Paravirtualisierung ist "Standard".

Wenn ich versuche, gleiche virtuelle Maschine auf einem Linux-Host mit Paravirtualisierung "Standard" der Windows 10 Gast nicht booten, es bootet, bis Punkte in einem Kreis bewegen, dann nach einer Weile friert es ein... keine Möglichkeit, Login zu erreichen, weder Desktop... erinnern Sie sich alle Festplatten sind unveränderlich.

Aber sobald ich paravirtualization auf "Heredada" (es ist in Spanisch) es bootet und erreichen Desktop, aber manchmal (denken Sie daran, alle Festplatten sind unveränderlich) es neu startet, während andere Zeiten kann ich es verwenden (sehr, sehr langsam)... so muss es ein Rennen Wettbewerb irgendwo, sinve mit unveränderlichen Festplatten es nicht immer das gleiche tun.

Ach ja, der Windows-Gast hat keinen Internetzugang, um sicher zu sein, dass keine Internetverbindung die Dinge zwischen den Kaltstarts anders laufen lassen kann.

Zur Erinnerung:

  • Alle Festplatten sind unveränderbar
  • Alle werden bei jedem Kaltstart wiederhergestellt
  • Windows-Gast funktioniert nicht immer
  • Mit Paravirtualisierung auf "Standard" bootet er nicht einmal auf dem Linux-Host, aber er bootet gut auf dem Windows-Host.
  • Mit Paravirtualisierung auf "Heredada" bootet er zwar auf dem Linux-Host (aber er ist nicht immer stabil, so dass man ihn benutzen kann)

Ich hatte auch versucht, 2D & 3D (auch PAE/NX) zu aktivieren/deaktivieren, weil ich möchte, dass derselbe Gast (virtuelle Festplatten, die von einem Host auf den anderen kopiert werden) auf zwei verschiedenen Hosts stabil ist; außerdem möchte ich in der Lage sein, virtuelle Festplatten von einem Host auf einen anderen Host zu kopieren, nachdem ich eine Aktualisierung vorgenommen habe (bevor ich einen Kaltstart durchführe, führe ich die unveränderliche Festplatte mit der übergeordneten zusammen, um die Änderungen dauerhaft zu machen und nicht zu verlieren, auch bekannt als CloneVDI); ich verwende keine Snapshots, nur unveränderliche Festplatten.

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

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

Ich hoffe, das hilft anderen, testen & testen & erneut testen (besser mit unveränderlichen Festplatten) jede Kombination von Werten, bis eine Kombination zu finden, die funktioniert, es scheint, das ist der einzige Weg, um einen Gast auf verschiedenen Arten von Hosts (Windows/Linux) laufen zu lassen !!!

Kommentare (0)