# VirtualBox

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 es Sun xVM VirtualBox bezeichnet, 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.
VirtualBox kann auf den Betriebssystemen FreeBSD, Linux, macOS, OS/2 bzw. eComStation, Solaris, Windows und Genode 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.

## Überblick

VirtualBox wurde von dem in Weinstadt ansässigen Unternehmen Innotek (ursprünglich InnoTek Systemberatung GmbH) entwickelt. Zunächst hatte Innotek dem Hypervisor Virtual PC von Connectix zur Unterstützung des Betriebssystems OS/2 verholfen. 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. Insbesondere werden in deutschen Behörden die SINA Workstations S eingesetzt, die eine VirtualBox enthalten.
Im Januar 2007 stellte Innotek VirtualBox erstmals als freie Software zur Verfügung. Im Februar 2008 wurde Innotek von Sun Microsystems übernommen. Sun Microsystems wiederum wurde im Januar 2010 von Oracle aufgekauft. Seit dieser Übernahme wird VirtualBox von Oracle vertrieben.
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), 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 steht. Für einen Wechsel zwischen beiden Versionen muss daher lediglich das Zusatzpaket installiert bzw. entfernt werden.
Bis Version 9 der PUEL 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, 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. 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.

## Funktionen

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.
Die freie GPL-Edition von VirtualBox emuliert im Gastsystem u. a. folgende Komponenten:
* die x86-CPU des jeweiligen Wirtssystems
* Intel-Chipsatz 440FX (Natoma)
* ACPI- (ab Version 1.6 oder früher) und I/O-APIC-Unterstützung
* VESA-kompatible Grafikprozessor
* IDE-Controller PIIX3 (82371SB), PIIX4 (82371AB) und ICH6 (82801FB)
* Serial-ATA-Controller ICH8 (82801HB), unterstützt AHCI
* SCSI-Controller von LSI Logic und BusLogic sowie SAS-Controller ebenfalls von LSI Logic
* die Netzwerkkarten AMD PCnet-PCI II (Am79C970A) und PCnet-FAST III (Am79C973), sowie Intel PRO/1000 in den Varianten MT Desktop (82540EM), T Server (82543GC) und MT Server (82545EM)
* virtio-Netzwerkkarte mit Paravirtualisierung
* Bootvorgang aus dem Netzwerk mit PXE Version 2.1
* die Soundkarten Intel AC’97, Intel HD Audio (ab VirtualBox 4.0) und Sound Blaster 16
* serielle Schnittstellen (National Semiconductor 16550A UART)
* virtuelle Schnittstelle für USB 1.1 (OHCI) oder 2.0 (EHCI)
* iSCSI-Unterstützung zu iSCSI-Servern durch das Wirtssystem ohne Emulation
* weitere Komponenten sind über das proprietäre Extension Pack verfügbar
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)
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):

#### Linux (Kernel ab 2.6)

    Ubuntu (18.04 LTS, 19.03 und 19.10), Debian (9, 10, 11), Oracle Linux (6, 7 und 8), RedHat (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.
Darüber hinaus gibt es auch ein Startprogramm, mit dessen Hilfe VirtualBox für Windows-Betriebssysteme leicht übertragbar (portabel) gemacht und gestartet werden kann. Dieses Startprogramm wird unabhängig von Oracle von der deutschen nLite-Gemeinschaft, in der Skriptsprache AutoIt, entwickelt und gepflegt.
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:
* Windows NT, 2000
* MS-DOS-kompatible DOS-Betriebssysteme (Windows 3.1, 95, 98, ME)
* Linux mit Kernel 2.2 (eingeschränkte Unterstützung)
* L4
* NetWare
* diverse BSD-Derivate
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. 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
** 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. 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.

### 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.
* Bestimmte PCI- und PCIe-Geräte des Host-Systems können mittels englisch PCI Passthrough direkt an ein Gastsystem durchgereicht werden.
* Webcams vom Hostsystem können direkt an ein Gastsystem durchgereicht werden (englisch Webcam Passthrough)
Das Modul steht für den privaten Einsatz kostenlos unter der PUEL sowie für den Unternehmenseinsatz unter proprietärer Lizenz zur Verfügung.

## Versionsgeschichte

| Version | Veröffentlichung | Beschreibung / Änderungen |
| Ältere Version; nicht mehr unterstützt: 1.0.37 | 12. April 2005 | Erste veröffentlichte Version, die noch unter einer proprietären Lizenz hauptsächlich an Firmenkunden verkauft wurde; insgesamt erschienen die Aktualisierungen 1.0.38 am 27. April 2005, 1.0.39 am 5. Mai 2005, 1.0.40 am 17. Juni 2005, 1.0.42 am 30. August 2005, 1.0.44 am 25. Oktober 2005, 1.0.46 am 4. November 2005, 1.0.48 am 23. November 2005 und 1.0.50 am 16. Dezember 2005. |
| Ältere Version; nicht mehr unterstützt: 1.1.2 | 3. Februar 2006 | Neben allgemeinen Leistungs- und Stabilitätsverbesserungen war erstmals ein Handbuch enthalten und die Gasterweiterungen für Windows wurden in ein Installationsprogramm gepackt; insgesamt erschienen die Aktualisierungen 1.1.4 am 9. März 2006, 1.1.6 am 18. April 2006, 1.1.8 am 17. Juli 2006, 1.1.10 am 28. Juli 2006 und 1.1.12 am 14. November 2006. |
| Ältere Version; nicht mehr unterstützt: 1.2.2 | 14. November 2006 | Die Linux Additions wurden um Unterstützung für X.org 7 erweitert, VRDP wurde beschleunigt und virtuelle Festplatten können nun bis zu 2 Tebibyte groß sein; die Aktualisierung 1.2.4 erschien am 16. November 2006. |
| Ältere Version; nicht mehr unterstützt: 1.3.2 | 15. Januar 2007 | Neben der proprietären Variante war erstmals auch eine freie Edition verfügbar: die Lizenzen waren die Personal Use and Evaluation License (PUEL) sowie, in einer reduzierten Variante von VirtualBox, die GPL; mit Version 1.3.4 kam die ALSA-Unterstützung (unter Linux) hinzu und mit Version 1.3.6 wurde die Grafik-VRAM-Grenze auf 128 Mebibyte erhöht; insgesamt erschienen die Aktualisierungen 1.3.4 am 12. Februar 2007, 1.3.6 am 20. Februar 2007 und 1.3.8 am 14. März 2007. |
| Ältere Version; nicht mehr unterstützt: 1.4 | 6. Juni 2007 | Mit Version 1.4 kamen die Unterstützung für 64-Bit-Linux-Systeme und Mac OS X/​Intel als Wirtssystem hinzu; zudem können seit dieser Version die Speicherabbilder für virtuelle Festplatten im VMDK-Format (für Virtual Maschine Disk) der VMware-Virtualisierungsprodukte direkt genutzt werden; auch die Unterstützung für serielle Schnittstellen kam hinzu und USB-Geräte können nun dynamisch einer virtuellen Maschine zugewiesen und auch wieder an das Wirtssystem zurückgegeben werden; der Zugriff auf die Gastsysteme in den virtuellen Maschinen ist nun über den integrierten RDP-Server dank Session-Shadowing von mehreren RDP-Clients aus gleichzeitig möglich; zusätzlich gibt es zahlreiche Fehlerbereinigungen und Einzelverbesserungen. |
| Ältere Version; nicht mehr unterstützt: 1.5 | 3. September 2007 | Ab dieser Version unterstützt VirtualBox auch 64-Bit-Windows (XP und Vista) als Wirtssystem; neben weiteren Fehlerbereinigungen und Detailverbesserungen sind virtuelle serielle Schnittstellen, Intel-PXE-2.1-Netzwerk-Startfähigkeit, die Gasterweiterungen für OS/2 Warp und der seamless windows hinzugekommen, mit dessen Hilfe Fenster des emulierten Windows-Gastsystems in das Wirtssystem integriert und somit auf demselben Desktop wie die restlichen Programmfenster des Wirtssystems platziert werden können; Unterstützung für USB 2.0 und Audio-Ausgabe über PulseAudio (Version 1.5.4); Version 1.5.6 ist die letzte noch von Innotek herausgegebene Version; insgesamt erschienen die Aktualisierungen 1.5.2 am 18. Oktober 2007, 1.5.4 am 29. Dezember 2007 und 1.5.6 am 19. Februar 2008. |
| Ältere Version; nicht mehr unterstützt: 1.6 | 30. April 2008 | Neu in dieser bereits als „Sun xVM VirtualBox“ veröffentlichten Variante ist die Solaris-Wirtssystem-Unterstützung, eine Webdienst-Programmierschnittstelle, virtualisierte Serial-ATA-AHCI-Controller (Hardware) für Gastsystem-Festplatten sowie experimentelle Unterstützung für PAE; die Emulation beinhaltet seither neben dem Audio-Standard AC’97 auch eine Sound-Blaster-16-Emulation; die Gasterweiterungen sind jetzt auch für Solaris verfügbar und der nahtlose Fenstermodus funktioniert auch in Linux- und Solaris-Gastsystemen und (mit Version 1.6.2) wurde eine Emulation der „Intel PRO/1000 T Server (82543GC)“-Netzwerkkarte hinzugefügt, die von Windows XP von Haus aus unterstützt wird; insgesamt erschienen die Aktualisierungen 1.6.2 am 6. Juni 2008, 1.6.4 am 30. Juli 2008 und 1.6.6 am 26. August 2008. |
| Ältere Version; nicht mehr unterstützt: 2.0 | 4. September 2008 | In diesem Major-Update wurde die grafische Bedienoberfläche grundlegend überarbeitet, so wurde neben dem Umstieg von Qt Version 3 auf Version 4 eine direkte grafische Oberfläche für Mac OS X 10.5 „Leopard“ erstellt; neu ist auch die Unterstützung von 64-Bit-Gastsystemen in einer 64-Bit-Wirtumgebung, sowie die Unterstützung von Speicherabbildern im VHD-Format; daneben gibt es wieder zahlreiche Fehlerbereinigungen und Detailverbesserungen; insgesamt erschienen die Aktualisierungen 2.0.2 am 12. September 2008, 2.0.4 am 24. Oktober 2008, 2.0.6 am 21. November 2008, 2.0.8 am 10. März 2009, 2.0.10 am 21. Juli 2009 und 2.0.12 am 20. Oktober 2009. |
| Ältere Version; nicht mehr unterstützt: 2.1 | 17. Dezember 2008 | Unterstützung für Hardware-Virtualisierung wird mit dieser Version auf Mac-OS-X-Wirtssysteme erweitert und experimentelle Unterstützung gibt es für OpenGL (nur die 32-Bit-Versionen von Windows XP und Windows Vista); die ebenfalls experimentelle Unterstützung von 64-Bit-Gast-Betriebssysteme auf 32-Bit-Wirtssystemen erfordert einen 64-Bit-Prozessor mit Virtualisierungsfunktionen in der Hardware und läuft langsamer ab als unter 64-Bit-Wirten; mit Version 2.1.2 kam eine erste Unterstützung für die Beta-Version von Windows 7; insgesamt erschienen die Aktualisierungen 2.1.2 am 21. Januar 2009 und 2.1.4 am 16. Februar 2009. |
| Ältere Version; nicht mehr unterstützt: 2.2 | 8. April 2009 | OpenGL ist jetzt auch auf Linux- und Solaris-Gastsystemen möglich, ebenso Gemeinsame Ordner auf Solaris- und OpenSolaris-Gästen, USB-Unterstützung auf OpenSolaris-Wirtssystemen (experimentell); neu ist der Host-only-Netzwerkmodus, die Unterstützung des Open Virtualization Formats sowie die Erhöhung der Speichergrenze auf 16 Gibibyte von Gästen auf 64-Bit-Wirtssystemen; VT-x/AMD-V und USB (OHCI & EHCI, nur bei Qt-GUI) sind jetzt bei neuen Gästen standardmäßig aktiviert; mit Version 2.2.2 wurde erstmals Mac OS X Snow Leopard als Wirtssystem unterstützt; insgesamt erschienen die Aktualisierungen 2.2.2 am 27. April 2009 und 2.2.4 am 29. Mai 2009. |
| Ältere Version; nicht mehr unterstützt: 3.0 | 30. Juni 2009 | Unterstützung für symmetrische Mehrprozessorsysteme (SMP) für Gast-Betriebssysteme mit bis zu 32 virtuellen Hauptprozessoren oder (Haupt-)​Prozessorkernen, Unterstützung für OpenGL 2.0 und die vorerst als experimentell eingestufte Unterstützung für Direct3D 8 und 9 für Windows-Gastsysteme; letzte Version für Mac OS X Tiger/Intel als Wirtsystem; insgesamt erschienen die Aktualisierungen 3.0.2 am 10. Juli 2009, 3.0.4 am 4. August 2009, 3.0.6 am 9. September 2009, 3.0.8 am 6. Oktober 2009, 3.0.10 am 29. Oktober 2009, 3.0.12 am 17. November 2009 und 3.0.14 am 18. März 2010. |
| Ältere Version; nicht mehr unterstützt: 3.1 | 30. November 2009 | Die Teleportation ermöglicht aktuell laufende virtuelle Maschinen (VM) auf ein anderes Wirtssystem zu übertragen. VMs können zu einem beliebigen Snapshot zurückkehren anstatt nur zum letzten Snapshot, Erweiterung mit 2D-Grafikbeschleunigung für Windows-Gastsysteme, Änderungen an den Netzwerkeinstellungen lassen sich nun während des Betriebs der VM vornehmen; Images werden nun auch im HDD-Format (für Parallels Hard Disk) unterstützt; insgesamt erschienen die Aktualisierungen 3.1.2 am 17. Dezember 2009, 3.1.4 am 12. Februar 2010, 3.1.6 am 25. März 2010 und 3.1.8 am 10. Mai 2010. |
| Ältere Version; nicht mehr unterstützt: 3.2 | 18. Mai 2010 | Umbenennung in „Oracle VM VirtualBox“ aufgrund der Übernahme von Sun durch Oracle, Mac OS X als Gast auf Apple-Hardware, verbesserte Speicherverwaltung, Austausch der Hauptprozessoren im laufenden Betrieb (Hot Plugging), Unterstützung für mehrere Bildschirme, Sicherungspunkte können während des Betriebs gelöscht werden, Emulation einer LSI-Logic-SAS-Steuereinheit, RDP-Video-Beschleunigung und konfigurierbares NAT; insgesamt erschienen die Aktualisierungen 3.2.2 am 2. Juni 2010, 3.2.4 am 7. Juni 2010, 3.2.6 am 25. Juni 2010, 3.2.8 am 6. August 2010, 3.2.10 am 8. Oktober 2010, 3.2.12 am 30. November 2010, 3.2.14 am 22. Dezember 2011, 3.2.16 am 17. Dezember 2012, 3.2.18 am 11. Oktober 2013, 3.2.20 am 11. Januar 2014, 3.2.22 am 14. März 2014, 3.2.24 am 15. Juli 2014, 3.2.26 am 17. Januar 2015 und schließlich 3.2.28 am 19. Mai 2015. |
| Ältere Version; nicht mehr unterstützt: 4.0 | 22. Dezember 2010 | Überarbeitete Benutzeroberfläche, Dateien können direkt in das Dateisystem des Gastsystems kopiert werden, VDI- und VHD-Abbilder können nun vergrößert und verkleinert werden; die Kernkomponenten der Version 4.0 stehen unter der GPLv2, die Zusatzpakete (englisch Extension Packs) unter der PUEL; insgesamt erschienen die Aktualisierungen 4.0.2 am 18. Januar 2011, 4.0.4 am 17. Februar 2011, 4.0.6 am 21. April 2011, 4.0.8 am 16. Mai 2011, 4.0.10 am 27. Juni 2011, 4.0.12 am 15. Juli 2011, 4.0.14 am 18. Oktober 2011, 4.0.16 am 11. Januar 2012, 4.0.18 am 18. Dezember 2012, 4.0.20 am 11. Oktober 2013, 4.0.22 am 11. Januar 2013, 4.0.24 am 14. März 2014, 4.0.26 am 15. Juli 2014, 4.0.28 am 17. Januar 2015, 4.0.30 am 19. Mai 2015, 4.0.32 am 10. Juli 2015, 4.0.34 am 20. Oktober 2015 und schließlich 4.0.36 am 11. November 2015. |
| Ältere Version; nicht mehr unterstützt: 4.1 | 19. Juli 2011 | Virtuelle Maschinen können nun geklont werden, bei 64-Bit-Wirtssystemen kann einer VM nun bis zu einem Tebibyte Hauptspeicher zugewiesen werden, zudem wurde die grafische Oberfläche mit Assistenten (u. a. zu bereits zuvor lediglich über die Kommandozeile unterstützten Funktionen, wie das Anlegen von VDI-, VMDK- und VHD-Abbildern) ergänzt und die Unterstützung für virtuelle Netzwerke durch UDP-Tunnel (für wirtübergreifende Netzwerke) erweitert; erste (experimentelle) Unterstützung für im laufenden Betrieb ein- und aushängbare Massenspeicher (Hotplugging) am virtuellen SATA-Bus; insgesamt erschienen die Aktualisierungen 4.1.2 am 15. August 2011, 4.1.4 am 3. Oktober 2011, 4.1.6 am 4. November 2011, 4.1.8 am 19. Dezember 2011, 4.1.10 am 13. März 2012, 4.1.12 am 3. April 2012, 4.1.14 am 26. April 2012, 4.1.16 am 22. Mai 2012, 4.1.18 am 20. Juni 2012, 4.1.20 am 20. August 2012, 4.1.22 am 7. September 2012, 4.1.24 am 19. Dezember 2012, 4.1.26 am 12. April 2013, 4.1.28 am 11. Oktober 2013, 4.1.30 am 11. Januar 2014, 4.1.32 am 13. März 2014, 4.1.34 am 15. Juli 2014, 4.1.36 am 17. Januar 2015, 4.1.38 am 19. Mai 2015, 4.1.40 am 10. Juli 2015, 4.1.42 am 20. Oktober 2015 und schließlich 4.1.44 am 11. November 2015. |
| Ältere Version; nicht mehr unterstützt: 4.2 | 13. September 2012 | Inhalte können nun zwischen Linux-Gästen und dem Basissystem durch Drag and Drop ausgetauscht werden, die Bandbreite des Netzwerkdatenverkehrs kann begrenzt werden, Speicherabbilder werden nun auch im QED- (für QEMU enhanced disk), QCOW- (für QEMU Copy-On-Write) und im VHDX-Format unterstützt, Unterstützung für Windows 8, Gruppierung der Maschinen zur Erhöhung der Übersichtlichkeit; unter Mac OS X als Wirtssystem wird nun mindestens 10.6 „Snow Leopard“ vorausgesetzt; insgesamt erschienen die Aktualisierungen 4.2.2 am 18. Oktober 2012, 4.2.4 am 26. Oktober 2012, 4.2.6 am 19. Dezember 2012, 4.2.8 am 27. Februar 2013, 4.2.10 am 15. März 2013, 4.2.12 am 12. April 2013, 4.2.14 am 21. Juni 2013, 4.2.16 am 4. Juli 2013, 4.2.18 am 6. September 2013, 4.2.20 am 28. November 2013, 4.2.22 am 11. Januar 2014, 4.2.24 am 13. März 2014, 4.2.26 am 15. Juli 2014, 4.2.28 am 17. Januar 2015, 4.2.30 am 19. Mai 2015, 4.2.32 am 10. Juli 2015, 4.2.34 am 20. Oktober 2015 und schließlich 4.2.36 am 11. November 2015. |
| Ältere Version; nicht mehr unterstützt: 4.3 | 15. Oktober 2013 | Der Virtualisierungscode wurde überarbeitet, wodurch die Geschwindigkeit gesteigert wurde, Multitouch-Fähigkeiten und erste Unterstützungen für Windows 10 wurden hinzugefügt, IPv6-Unterstützung wurde ausgebaut und ist nun in fast allen Komponenten verfügbar, 3D-Beschleunigung wurde ausgebaut, sodass die Effekte in Ubuntu und Fedora nun besser nutzbar sind, eine virtuelle Webcam ist nun verfügbar; insgesamt erschienen die Aktualisierungen 4.3.2 am 1. November 2013, 4.3.4 am 29. November 2013, 4.3.6 am 18. Dezember 2013, 4.3.8 am 25. Februar 2014, 4.3.10 am 25. März 2014, 4.3.12 am 16. Mai 2014, 4.3.14 am 15. Juli 2014, 4.3.16 am 9. September 2014, 4.3.18 am 10. Oktober 2014, 4.3.20 am 21. November 2014, 4.3.22 am 12. Februar 2015, 4.3.24 am 2. März 2015, 4.3.26 am 16. März 2015, 4.3.28 am 13. Mai 2015, 4.3.30 am 10. Juli 2015, 4.3.32 am 20. Oktober 2015, 4.3.34 am 11. November 2015, 4.3.36 am 19. Januar 2016, 4.3.38 am 19. April 2016 und schließlich 4.3.40 am 22. August 2016. |
| Ältere Version; nicht mehr unterstützt: 5.0 | 9. Juli 2015 | Der USB-Controller unterstützt USB 3. Festplattenimages können verschlüsselt werden. VM und GUI können unabhängig voneinander betrieben werden, sodass ein Schließen der GUI unabhängig von der VM möglich ist. Die Verwaltung mittels GUI wurde ausgebaut. Es wird Drag-and-Drop zwischen Host und Gast unterstützt. Unterstützung für die Wirtsysteme Windows XP, Windows Server 2003 und Mac OS X Snow Leopard (10.6) und Lion (10.7) wurde weitestgehend fallen gelassen; insgesamt erschienen die Aktualisierungen 5.0.2 am 13. August 2015, 5.0.4 am 8. September 2015, 5.0.6 am 2. Oktober 2015, 5.0.8 am 20. Oktober 2015, 5.0.10 am 10. November 2015, 5.0.12 am 18. Dezember 2015, 5.0.14 am 19. Januar 2016, 5.0.16 am 4. März 2016, 5.0.18 am 18. April 2016, 5.0.20 am 28. April 2016, 5.0.22 am 16. Juni 2016, 5.0.24 am 28. Juni 2016, 5.0.26 am 18. Juli 2016, 5.0.28 am 18. Oktober 2016, 5.0.30 am 23. November 2016, 5.0.32 am 17. Januar 2017, 5.0.34 am 8. März 2017, 5.0.36 am 15. März 2017, 5.0.38 am 18. April 2017 und schließlich 5.0.40 am 28. April 2017. |
| Ältere Version; nicht mehr unterstützt: 5.1 | 12. Juli 2016 | Die Oberfläche wurde vollständig auf Qt5 portiert; insgesamt erschienen die Aktualisierungen 5.1.2 am 21. Juli 2016, 5.1.4 am 16. August 2016, 5.1.6 am 12. September 2016, 5.1.8 am 18. Oktober 2016, 5.1.10 am 21. November 2016, 5.1.12 am 20. Dezember 2016, 5.1.14 am 17. Januar 2017, 5.1.16 am 8. März 2017, 5.1.18 am 15. März 2017, 5.1.20 am 18. April 2017, 5.1.22 am 28. April 2017, 5.1.24 am 18. Juli 2017, 5.1.26 am 27. Juli 2017, 5.1.28 am 14. September 2017, 5.1.30 am 16. Oktober 2017, 5.1.32 am 15. Januar 2018, 5.1.34 am 27. Februar 2018, 5.1.36 am 17. April 2018 und schließlich 5.1.38 am 9. Mai 2018. |
| Ältere Version; nicht mehr unterstützt: 5.2 | 18. Oktober 2017 | VM-Export in die Oracle Cloud. Unbeaufsichtigte Installation von Gastsystemen. Neue Icons und generelle Verbesserungen der Oberfläche. Bislang erschienen die Aktualisierungen 5.2.2 am 24. November 2017, 5.2.4 am 19. Dezember 2017, 5.2.6 am 15. Januar 2018, 5.2.8 am 27. Februar 2018, 5.2.10 am 17. April 2018, 5.2.12 am 9. Mai 2018, 5.2.14 am 2. Juli 2018, 5.2.16 am 17. Juli 2018, 5.2.18 am 14. August 2018, 5.2.20 am 16. Oktober 2018, 5.2.22 am 9. November 2018, 5.2.24 am 15. Januar 2019, 5.2.26 am 28. Januar 2019, 5.2.28 am 17. April 2019, 5.2.30 am 13. Mai 2019, 5.2.32 am 16. Juli 2019, 5.2.34 am 15. Oktober 2019, 5.2.36 am 14. Januar 2020, 5.2.38 am 21. Februar 2020, 5.2.40 am 14. April 2020, 5.2.42 am 14. Mai 2020 und schließlich 5.2.44 am 14. Juli 2020. |
| Ältere Version; nicht mehr unterstützt: 6.0 | 18. Dezember 2018 | Überarbeitung der Oberfläche und verbesserte Grafikleistung. Bislang erschienen die Aktualisierungen 6.0.2 am 15. Januar 2019, 6.0.4 am 28. Januar 2019, 6.0.6 am 16. April 2019, 6.0.8 am 14. Mai 2019, 6.0.10 am 16. Juli 2019, 6.0.12 am 3. September 2019, 6.0.14 am 15. Oktober 2019, 6.0.16 am 14. Januar 2020, 6.0.18 am 21. Februar 2020, 6.0.20 am 14. April 2020, 6.0.22 am 15. Mai 2020 und schließlich 6.0.24 am 14. Juli 2020. |
| Ältere Version; nicht mehr unterstützt: 6.1 | 10. Dezember 2019 | Unterstützung des Import und erweiterte Unterstützung des Export von virtuellen Maschinen aus der Oracle-Cloud-Infrastruktur. Die 3D-Grafik-Unterstützung VBoxVGA wurde durch VBoxSVGA und VMSVGA ersetzt. Bislang erschien als Aktualisierung 6.1.2 am 14. Januar 2020, 6.1.4 am 19. Februar 2020, 6.1.6 am 14. April 2020, 6.1.8 am 15. Mai 2020, 6.1.10 am 5. Juni 2020, 6.1.12 am 14. Juli 2020, 6.1.14 am 4. September 2020, 6.1.16 am 16. Oktober 2020, 6.1.18 am 19. Januar 2021, 6.1.20 am 20. April 2021, 6.1.22 am 29. April 2021, 6.1.24 am 20. Juli 2021, 6.1.26 am 28. Juli 2021, 6.1.28 am 19. Oktober 2021, 6.1.30 am 22. November 2021, 6.1.32 am 18. Januar 2022, 6.1.34 am 19. April 2022, 6.1.36 am 19. Juli 2022, 6.1.38 am 2. September 2022, 6.1.40 am 11. Oktober 2022, 6.1.42 am 17. Januar 2023, 6.1.44 am 18. April 2023, 6.1.46 am 18. Juli 2023, 6.1.48 am 17. Oktober 2023 und schließlich 6.1.50 am 16. Januar 2024. |
| Ältere Version; noch unterstützt: 7.0 | 10. Oktober 2022 | Möglichkeit zur vollständigen Verschlüsselung von Gastsystemen, einschließlich Logbücher und Sicherungspunkte. Verbesserung der Unterstützung aktueller Betriebssysteme: Secure Boot und Virtuelle TPM-Module 1.2 und 2.0 für Windows 11. Für macOS als Gastsystem werden keine Kernel-Erweiterungen mehr benötigt, VirtualBox setzt vollständig auf von Apple zur Verfügung gestellte Frameworks. Bei Linux-Gastsystemen wurde die Funktionalität zur Veränderung der Größe des Anzeigefensters überarbeitet. Über Cloud-Speicher verfügbare VMs können über das Management-Fenster eingebunden und wie lokale VMs gesteuert werden. Bislang erschien als Aktualisierung 7.0.2 am 20. Oktober 2022, 7.0.4 am 18. November 2022, 7.0.6 am 17. Januar 2023, 7.0.8 am 18. April 2023, 7.0.10 am 18. Juli 2023, die 7.0.12 am 17. Oktober 2023, die 7.0.14 am 16. Januar 2024, die 7.0.16 am 16. April 2024, die 7.0.18 am 3. Mai 2024, die 7.0.20 am 16. Juli 2024, 7.0.22 am 15. Oktober 2024 und die aktuelle Version 7.0.24 am 21. Januar 2025. |
| Aktuelle Version: 7.1 | 9. September 2024 | Neues Logo und verändertes Aussehen durch eine neue Benutzeroberfläche, die zunächst die Auswahl erfordert, ob man sich lediglich Basisfunktionen oder auch Funktionen für erfahrene Benutzer anzeigen lassen möchte. Die verbesserte OCI Integration liefert eine Anzeige der von virtuellen Maschinen in der Cloud genutzten Ressourcen und bietet Cloning- und Reset-Funktion. Neue Engine unterstützt IPv6. Shared Clipboard erlaubt erstmals den Austausch von Dateien zwischen Linux- und Windowssystemen. Bislang erschien als Aktualisierung 7.1.2 am 26. September 2024, 7.1.4 am 15. Oktober 2024 und die aktuelle Version 7.1.6 am 21. Januar 2025. |
| Legende:Ältere Version; nicht mehr unterstütztÄltere Version; noch unterstütztAktuelle VersionAktuelle VorabversionZukünftige Version |||