Top-Fragen
Zeitleiste
Chat
Kontext

VirtualBox

Virtualisierungssoftware Aus Wikipedia, der freien Enzyklopädie

VirtualBox
Remove ads

VirtualBox ist eine Virtualisierungssoftware des US-amerikanischen Unternehmens Oracle, die ursprünglich von der InnoTek Systemberatung GmbH aus Baden-Württemberg entwickelt wurde. Nach der Übernahme durch Sun Microsystems im Februar 2008 wurde daraus Sun xVM VirtualBox, da Sun es in sein xVM-Portfolio eingliederte. Sun Microsystems wurde 2010 von Oracle übernommen, das Oracle VM VirtualBox nunmehr ebenfalls in sein VM-Portfolio eingliederte. Die freie Variante behielt jedoch den ursprünglichen Namen.[8]

Schnelle Fakten Oracle VM VirtualBox, Basisdaten ...
Remove ads

VirtualBox kann auf den Betriebssystemen FreeBSD,[9] Linux, macOS, OS/2 bzw. eComStation, Solaris, Windows und Genode[10] als Wirtssystem auf x86- (32 Bit) und x86-64-Systemen (64 Bit) eingesetzt werden.

Als Gastsystem können wiederum x86- bzw. x64-Betriebssysteme eingesetzt werden. Für eine Vielzahl an Betriebssystemen werden Treiber, Kernel-Module bzw. -Erweiterungen mitgeliefert; diese stehen bei der Einrichtung einer neuen virtuellen Maschine zur Auswahl.

Remove ads

Überblick

Zusammenfassung
Kontext

VirtualBox wurde von dem in Weinstadt ansässigen Unternehmen Innotek (ursprünglich InnoTek Systemberatung GmbH) entwickelt.[11] Zunächst hatte Innotek dem Hypervisor Virtual PC von Connectix zur Unterstützung des Betriebssystems OS/2 verholfen.[12] Nachdem Connectix von Microsoft aufgekauft worden war, begann Innotek im Jahr 2004 mit der Entwicklung von VirtualBox und gewann unter anderem Behörden als Anwender.[13] Insbesondere werden in deutschen Behörden die SINA Workstations S eingesetzt, die eine VirtualBox enthalten.[14]

Im Januar 2007 stellte Innotek VirtualBox erstmals als freie Software zur Verfügung.[15] Im Februar 2008 wurde Innotek von Sun Microsystems übernommen.[16] Sun Microsystems wiederum wurde im Januar 2010 von Oracle aufgekauft.[17] Seit dieser Übernahme wird VirtualBox von Oracle vertrieben.[15]

Ab Version 1.3.2 (Anfang 2007) bis einschließlich Version 3 (Ende 2010) waren zwei unterschiedliche Varianten (Editionen genannt) mit unterschiedlichen Lizenzen verfügbar: Oracle VirtualBox mit allen Funktionen unter proprietärer Lizenz (PUEL[18]), welche für persönliche sowie zu jeglicher Verwendung in Bildungseinrichtungen kostenfrei genutzt werden durfte, und VirtualBox Open Source Edition (OSE), welcher diverse Funktionen fehlten und die unter der GNU General Public License (GPL) stand. Ab Version 4.0 vom 22. Dezember 2010 stellt Oracle nur noch eine unter der GPL stehende Edition zur Verfügung, die in etwa der früheren Open Source Edition entspricht und mit Modulen erweitert werden kann. Lediglich der Funktionsumfang wurde um USB-1.1-Unterstützung erweitert. Die Funktionen der proprietären Version 3 sind nun in das Modul Oracle VM VirtualBox Extension Pack ausgelagert, welches wieder unter der PUEL[18] steht. Für einen Wechsel zwischen beiden Versionen muss daher lediglich das Zusatzpaket installiert bzw. entfernt werden.

Bis Version 9 der PUEL[19] fällt unter Personal Use (englisch für persönlicher Gebrauch) auch, wenn ein Angestellter in einer Firma die unter der PUEL stehenden Teile persönlich installiert und verwendet. Ausgeschlossen ist daher nur eine automatische Installation des Oracle VM VirtualBox Extension Pack oder der Gasterweiterungen im Gastsystem z. B. durch den Systemadministrator und auch die Nutzung mit Fernwartungssoftware (wie beispielsweise VNC), nicht aber die kommerzielle Nutzung – solange sie persönlich erfolgt. Ab Version 10 der PUEL, die als Datum den 20. Juli 2017 angibt,[20] ist die kommerzielle Nutzung jedoch explizit ausgeschlossen. Mit Version 5.1.30 vom 16. Oktober 2017 wurde die PUEL des Extension Pack auf Version 10 aktualisiert.[21] Als Konsequenz daraus ist das VirtualBox Extension Pack nur bis Version 5.1.28 vom 13. September 2017 persönlich gratis kommerziell, wie beispielsweise in Firmen, nutzbar.

Remove ads

Funktionen

Zusammenfassung
Kontext

Festplatten werden in Containerdateien, von VirtualBox auch als Virtual Disk Images, (kurz VDI) bezeichnet, emuliert. Neben diesem eigenen Dateiformat kann VirtualBox auch mit Festplattendateien von VMware-Virtualisierungsprodukten (mit der Dateiendung „.vmdk“), dem „Virtual Hard Disk“-Format (mit der Dateiendung „.vhd“) von Virtual PC, HDD-Dateien von Parallels sowie mit Abbildern im QED- (QEMU enhanced disk) und QCOW-Format (QEMU Copy-On-Write) der Emulations- und Virtualisierungssoftware QEMU umgehen. Zudem können iSCSI-Objekte als virtuelle Festplatten genutzt werden, wobei der hierfür benötigte iSCSI-Initiator bereits in VirtualBox enthalten ist. Mit dem zu VirtualBox gehörenden Kommandozeilen-Werkzeug VBoxManager kann man diese fremden Formate auch konvertieren.

Von virtuellen Maschinen lassen sich Schnappschüsse erstellen, sodass der Zustand des virtuellen Datenträgers und Arbeitsspeichers später wiederhergestellt werden kann.[22]

Die freie GPL-Edition von VirtualBox emuliert im Gastsystem u. a. folgende Komponenten:

Thumb
Das „About VirtualBox“-Fenster der Open Source Edition ab Version 5
Thumb
Das „About VirtualBox“-Fenster der Open Source Edition zeigte bis Version 4.3 die Maskottchen einiger unterstützter Gast-Betriebssysteme

Die Grafikauflösung ist ohne entsprechende Treiber (als Gasterweiterung) auf 800×600 bzw. 1024×768 Pixel beschränkt.

Die VMs lassen sich wahlweise über mehrere Frontends bedienen:

  • eine grafische Benutzeroberfläche (GUI), die die Grafikbibliothek Qt nutzt, in der aber noch nicht alle Optionen des Konsolenprogramms implementiert sind (VirtualBox)
  • ein Konsolenprogramm (VBoxManage)
  • eine Python-Shell (VBoxShell)
  • ein SDL-Programm (VBoxSDL)
  • einen Remote-Desktop-Protocol-Server, der in der Konsole läuft (VBoxHeadless, vormals VBoxVRDP)
  • per Webserver (vboxwebsrv) und Skript (phpVirtualBox)[24][25]

Die Virtualisierungserweiterungen der aktuellen Intel-CPUs mit der Bezeichnung VT-x und dessen AMD-Pendant AMD-V werden, sofern vorhanden, genutzt. Hierbei werden auch neuere Funktionen dieser Befehlssatzerweiterungen wie Nested Paging/Rapid Virtualization Indexing unterstützt.

Für Systeme ohne VT-x/AMD-V oder bei manueller Abwahl dieser Funktionen besitzt VirtualBox den „Raw Mode“. Hierbei versucht VirtualBox, so viel Code wie möglich nativ auszuführen. In den meisten Fällen läuft Ring-3-Code des Gastsystems nativ auf dem Wirtssystem. Versucht das Gastsystem, Ring-0-Code auszuführen, führt das Wirtssystem diesen stattdessen im Ring-1 aus (der normalerweise nicht genutzt wird). Wenn es nicht möglich sein sollte, Code nativ auszuführen, muss dieser von einem Emulator ausgeführt werden, der auf dem Quellcode von QEMU basiert. Da die Ausführung von Ring-0-Code im Ring-1 zu sehr vielen Ausnahmen führt (privilegierte Instruktionen dürfen nur im Ring-0 ausgeführt werden), betreibt VirtualBox eine Art in situ-Patching. Hierbei wird der Gastcode zur Laufzeit und unmittelbar vor Ausführung mit Hilfe einer Disassembler-Komponente (CASM) auf problematische Segmente hin analysiert und gegebenenfalls von einem Patch Manager (PATM) so verändert oder ersetzt, dass Ausnahmen reduziert werden und sich die Ausführungsgeschwindigkeit erhöht. In vielen Fällen ist der klassische Ansatz mit Patch Manager effizienter als VT-x/AMD-V, es gibt jedoch Einschränkungen in der Kompatibilität mit weniger verbreiteten Gastsystemen.

Unterstützte Betriebssysteme

Da VirtualBox einen x86-Prozessor in einer virtuellen Umgebung bereitstellt, werden auch nur für diese Prozessorarchitektur geschriebene Betriebssysteme, sowohl als Gast- als auch als Wirtbetriebssystem, unterstützt. Die Virtualisierung beschränkt sich so auf das Erstellen einer VM, deren Prozessor dem tatsächlich im System verbauten Prozessor entspricht. Der Systemprozessor wird also, anders als bei QEMU, nicht emuliert, was in der Regel mehr Rechenleistung benötigen würde.

Folgende Wirtssysteme (Host) werden unterstützt (aktuelle Version):[26]

Linux (Kernel ab 2.6)
Ubuntu (18.04 LTS, 19.03 und 19.10), Debian (9, 10, 11), Oracle Linux (6, 7 und 8), Red Hat (6, 7, 8), Fedora (30 und 31), Gentoo, openSUSE (15.1) sowie SUSE Linux Enterprise Server (12 und 15)
Microsoft Windows
Windows Server 2012, 2016 und 2019, Windows 8.1, Windows 10, Windows 11
Apple Mac bzw. macOS
High Sierra (10.13) bis 6.1, Mojave (10.14) bis 6.1, Catalina (10.15) min. für Version 7.x
Oracle Solaris
Version 11; experimentelle Unterstützung in der Open Source Edition (OSE), die von ehemaligen Sun-Entwicklern in deren Freizeit entwickelt wurde.
IBM OS/2 und eComStation
VirtualBox in Version 1.56; ein von der OS/2-Community gesponserter Port der Version 5.0 befindet sich im Beta-Stadium.[27]

Darüber hinaus gibt es auch ein Startprogramm, mit dessen Hilfe VirtualBox für Windows-Betriebssysteme leicht übertragbar (portabel) gemacht und gestartet werden kann.[28] Dieses Startprogramm wird unabhängig von Oracle von der deutschen nLite-Gemeinschaft, in der Skriptsprache AutoIt, entwickelt und gepflegt.[29]

Mac OS X/OS X/macOS kann ab Version 3.2 auch als Gastsystem ausgeführt werden, was aus lizenzrechtlichen Gründen jedoch nur auf Apple-Hardware zugelassen ist. Da mittels Boot Camp auch Windows auf jedem Intel-basierten Mac-Rechner installiert werden kann, ist folglich macOS als Gastsystem auch unter Windows als Wirtssystem möglich.

Ab Version 2.1 können die unterstützten Gastsysteme unabhängig vom Wirtssystem sowohl als 32-Bit- als auch als 64-Bit-Virtualisierung nutzen, sofern der Prozessor des Wirtssystems dies unterstützt. Zusätzlich zu den bereits als unterstützte Wirtssysteme gelisteten Betriebssystemen sind auch folgende Systeme virtualisierbar:

Es ist durchaus möglich, VirtualBox mit weiteren Gast-Betriebssystemen zu betreiben. Das Aktivieren der Virtualisierungserweiterung moderner x86-Prozessoren (bei Intel VT-x, AMD-V bei AMD) kann dabei helfen, ein sonst nicht unterstütztes Betriebssystem in der virtuellen Umgebung von VirtualBox laufen zu lassen.

Gasterweiterungen

Die nur in englischer Sprache verfügbaren Gasterweiterungen (englisch Guest Additions) von VirtualBox erweitern die Integration zwischen Wirt- und Gastsystem. Diese liegen für Windows ab NT 4.0 und OS/2 Warp als Binärdaten (als eine Art Treiber-CD), für Linux und Solaris als Quellcode und Installationspaket vor und werden im virtuellen CD-Laufwerk innerhalb der VM bereitgestellt.[30] Die folgenden Komponenten werden dabei erweitert:

  • Grafikkarten-Treiber
    • der Mauszeiger kann das Fenster der VM verlassen, ohne die „Host-Taste“ benutzen zu müssen
    • die Grafikauflösung wird auf maximal 64.000×64.000 Pixel in 32-Bit-Farbtiefe erweitert; dadurch wird der Multi-Monitor-Modus ermöglicht
    • die Grafikauflösung wird sofort an die Fenstergröße im Wirt angepasst
    • „Nahtloser Modus“ – die Programmfenster des Gastsystems können frei auf der Arbeitsfläche des Wirtssystems platziert werden[31]
    • OpenGL-Unterstützung (derzeit nur für die 32-Bit-Variante von Windows XP und Windows Vista sowie FreeBSD, Linux und Solaris, die offizielle Unterstützung für Linux umfasst nur neuere Kernel und verbreitete Distributionen)
    • Experimentelle Direct3D-8- und -9-Unterstützung für Windows 2000-, Windows-XP-, Vista- und Windows-7-Gastsysteme
  • „Gemeinsame Ordner“ – Wirtssystem und Gastsystem können Ordner gegenseitig freigeben bzw. synchronisieren (uni- und bidirektionaler Datentransfer)
  • Zeit-Synchronisation zwischen Wirt- und Gastsystem
  • automatisierte Windows-Anmeldungen mittels VBoxGINA

Ab Version 4 wird auch die neue, auf Compiz basierende Benutzeroberfläche Unity der Linux-Distribution Ubuntu unterstützt. Für Windows-Versionen der 9x-Linie und andere Betriebssysteme gibt es die Gasterweiterungen nicht, ferner wird nur eine begrenzte Anzahl von Linux-Distributionen (Fedora/Red Hat, Ubuntu, openSUSE) offiziell unterstützt.[32] Die Gasterweiterungen sind auch für Mac OS X Snow Leopard Server beziehungsweise ab Mac OS X Lion Standard und Server nicht verfügbar, da diese als Gastsystem nur eine untergeordnete Rolle spielen.[33]

Funktionen des proprietären Moduls

Einige Funktionen, die zusätzlich im Oracle VM VirtualBox Extension Pack enthalten sind:

  • virtuelle USB-2.0-Schnittstelle (ICH6-EHCI)
  • virtuelle USB-3-Schnittstelle (xHCI, ab VirtualBox 5.0)
  • virtuelle USB-Geräte, die man im Gastsystem benutzen kann, obwohl auf dem Wirtssystem keine entsprechenden Treiber vorliegen
  • das Remote Desktop Protocol (RDP) wird vollständig unterstützt und erlaubt einer VM, einen RDP-Server zu betreiben
  • USB über RDP, das einem RDP-Server in einer VM erlaubt, USB-Geräte von Thin-Clients zu benutzen
  • Festplattenabbildungen können am Hostsystem verschlüsselt abgelegt werden. Die Verschlüsselung ist für das Gastsystem transparent.[34]
  • Bestimmte PCI- und PCIe-Geräte des Host-Systems können mittels englisch PCI Passthrough direkt an ein Gastsystem durchgereicht werden.[35]
  • Webcams vom Hostsystem können direkt an ein Gastsystem durchgereicht werden (englisch Webcam Passthrough)[36]

Das Modul steht für den privaten Einsatz kostenlos unter der PUEL[37] sowie für den Unternehmenseinsatz unter proprietärer Lizenz zur Verfügung.

Remove ads

Versionsgeschichte

Weitere Informationen Version, Veröffentlichung ...
Remove ads

Siehe auch

Produkte, die in direkter Konkurrenz zu VirtualBox stehen:

Weitere Virtualisierungsprodukte:

Literatur

  • Dirk Becker: VirtualBox: Installation, Anwendung, Praxis. 2. aktualisierte Auflage. Galileo Press, Bonn 2011, ISBN 978-3-8362-1778-1.
Commons: VirtualBox – Sammlung von Bildern, Videos und Audiodateien
Remove ads

Einzelnachweise

Loading content...
Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads