VirtualBox peut être installé sur Microsoft Windows , macOS , Linux , Solaris et OpenSolaris . Des versions existent également pour FreeBSD et Genode . Il prend en charge la création et la gestion de machines virtuelles invitées exécutant Windows, Linux, BSD , OS/2 , Solaris, Haiku et OSx86 , ainsi que la virtualisation limitée de CDDL pour la plupart des fichiers de la distribution source, VirtualBox est un logiciel libre et open source . Cependant, le pack d'extensions est un logiciel propriétaire , gratuit uniquement pour les particuliers. La licence de VirtualBox a été modifiée pour adopter la GPLv3, avec des exceptions de liaison vers la CDDL et d'autres licences incompatibles avec la GPL.


VirtualBox a d'abord été proposé par InnoTek Systemberatung GmbH, une société allemande basée à Weinstadt , sous une licence de logiciel propriétaire . Une version du produit était disponible gratuitement pour un usage personnel ou d'évaluation, conformément à la licence VirtualBox Personal Use and Evaluation License (PUEL). En janvier 2007, sur les conseils de LiSoG , InnoTek a publié VirtualBox Open Source Edition (OSE) en tant que logiciel libre et open source , sous réserve des exigences de la licence publique générale GNU (GPL), version 2.
InnoTek a également contribué au développement de la prise en charge d'OS/2 et de Linux dans la virtualisation et aux portages OS/2 de produits Connectix , rachetés ultérieurement par Microsoft . Plus précisément, InnoTek a développé le code des « additions » pour Windows Virtual PC et Microsoft Virtual Server , permettant diverses interactions entre le système d'exploitation hôte et le système d'exploitation invité, comme le partage du presse-papiers ou le redimensionnement dynamique de la fenêtre d'affichage.
Sun Microsystems a acquis InnoTek en février 2008.
Suite à l' acquisition de Sun Microsystems par Oracle Corporation en janvier 2010, le produit a été rebaptisé « Oracle VM VirtualBox ».
En décembre 2019, VirtualBox a supprimé la prise en charge de la virtualisation logicielle et effectue exclusivement une virtualisation assistée par matériel .
En août 2025, VirtualBox a commencé à prendre pleinement en charge la virtualisation ARM.
Historique des versions
| Version | date de sortie | Changements notables |
|---|---|---|
| 3.2 | Ballonnage de mémoire (non disponible sur les hôtes Solaris) | |
| 4.0 | du codec audio Intel HD | |
| 4.1 | cartes réseau avec le chipset ICH9 | |
| 4.3 | Prise en charge de la paravirtualisation pour les systèmes invités Windows et Linux afin d'améliorer la précision et les performances de la gestion du temps. | |
| 6.0 | Oracle Cloud | |
| 6.1 | Oracle Cloud | |
| 7.0 | démarrage sécurisé UEFI et émulation des puces TPM 1.2 et 2.0 | |
| 7.1 | Prise en charge d'IPv6 pour NAT | |
| 7.2 | 14 août 2025 |
|
| 7.2.6 | 20 janvier 2026 | Les fonctionnalités suivantes, auparavant propriétaires, sont désormais accessibles en open source :
|
Licence
Le logiciel principal, depuis la version 4 de décembre 2010, est un logiciel libre distribué sous licence publique générale GNU version 2 (GPLv2). Un module complémentaire, sous licence propriétaire , ajoute la prise en charge des périphériques USB 2.0 et 3.0, du protocole RDP ( Remote Desktop Protocol ), du chiffrement de disque, de NVMe et de l'environnement d'exécution avant démarrage (PXE). Ce module, appelé « Extension VirtualBox Oracle VM VirtualBox », contient des composants propriétaires et n'est donc pas disponible en code source . La licence est une licence d'utilisation personnelle et d'évaluation (PUEL) . Elle autorise un accès gratuit pour un usage personnel, éducatif et d'évaluation. Depuis la version 5.1.30 de VirtualBox, Oracle définit l'utilisation personnelle comme une installation sur un seul ordinateur à des fins non commerciales.
Avant la version 4, le logiciel VirtualBox était proposé en deux versions. La version complète était offerte gratuitement sous licence PUEL, et des licences pour les autres déploiements commerciaux étaient disponibles auprès d'Oracle. Une seconde version, appelée VirtualBox Open Source Edition (OSE), était distribuée sous licence GPLv2. Cette version ne comportait pas les mêmes composants propriétaires non disponibles sous GPLv2.
Depuis le 9 septembre 2011, la compilation du BIOS pour VirtualBox nécessite le compilateur Open Watcom , distribué sous la licence publique Sybase Open Watcom . L' Open Source Initiative l'a approuvé comme « logiciel libre » , mais la Free Software Foundation et les directives Debian pour les logiciels libres ne le considèrent pas comme « libre ».
VirtualBox prend en charge, à titre expérimental, les machines virtuelles macOS. Toutefois, le contrat de licence utilisateur final de macOS n'autorise pas son exécution sur du matériel non Apple. Le système d'exploitation applique cette restriction en faisant appel au contrôleur de gestion système (SMC) d'Apple afin de vérifier l'authenticité du matériel. Tous les ordinateurs Apple sont équipés d'un SMC.
Virtualisation
Les utilisateurs de VirtualBox peuvent exécuter plusieurs systèmes d'exploitation invités sous un seul système d'exploitation hôte. Chaque système invité peut être démarré, mis en pause et arrêté indépendamment au sein de sa propre machine virtuelle (VM). L'utilisateur peut configurer chaque VM indépendamment et l'exécuter sous virtualisation logicielle ou matérielle, si le matériel hôte le permet. Le système d'exploitation hôte, les systèmes d'exploitation invités et les applications peuvent communiquer entre eux via différents mécanismes, notamment un presse-papiers commun et un réseau virtualisé. Les VM invitées peuvent également communiquer directement entre elles si elles sont configurées à cet effet.
Assistance matérielle
VirtualBox prend en charge la virtualisation matérielle VT-x d' Intel et AMD-V d' AMD . Grâce à ces technologies, VirtualBox peut exécuter chaque machine virtuelle invitée dans son propre espace d'adressage distinct ; le code du système d'exploitation invité (anneau 0) s'exécute sur l'hôte en mode VMX non-root (anneau 0) et non en anneau 1.virtualisation assistée par matériel . VMDK de VMware et VHD de Microsoft . Il prend ainsi en charge les disques créés par d’autres hyperviseurs. VirtualBox peut également se connecter à des cibles iSCSI et à des partitions brutes sur l’hôte, en les utilisant comme disques durs virtuels. VirtualBox émule les contrôleurs IDE (PIIX4 et ICH6), SCSI , SATA (contrôleur ICH8M) et SAS , auxquels des disques durs peuvent être connectés.
VirtualBox prend en charge le format Open Virtualization Format (OVF) depuis la version 2.2.0 (avril 2009).
Les images ISO et les périphériques physiques connectés à l'hôte peuvent être montés comme des lecteurs CD ou DVD. VirtualBox prend en charge l'exécution de systèmes d'exploitation à partir de CD et DVD live .
Par défaut, VirtualBox fournit une prise en charge graphique via une carte graphique virtuelle personnalisée compatible VBE ou UEFI GOP . Les additions invité pour Windows, Linux, Solaris, OpenSolaris et OS/2 incluent un pilote vidéo spécial qui améliore les performances vidéo et offre des fonctionnalités supplémentaires, telles que l'ajustement automatique de la résolution de l'invité lors du redimensionnement de la fenêtre de la machine virtuelle et la composition du bureau via des pilotes WDDM virtualisés .
Pour une carte réseau Ethernet , VirtualBox virtualise ces cartes d'interface réseau :
- AMD PCnet PCI II (Am79C970A)
- AMD PCnet-Fast III (Am79C973)
- Ordinateur de bureau Intel Pro/1000 MT (82540EM)
- Serveur Intel Pro/1000 MT (82545EM)
- Serveur Intel Pro/1000 T (82543GC)
- Adaptateur réseau paravirtualisé (virtio-net)
Les cartes réseau émulées permettent à la plupart des systèmes d'exploitation invités de fonctionner sans qu'il soit nécessaire de rechercher et d'installer les pilotes du matériel réseau, car ceux-ci sont fournis avec le système d'exploitation invité. Une carte réseau paravirtualisée spéciale est également disponible ; elle améliore les performances réseau en s'affranchissant de la nécessité d'une interface matérielle spécifique, mais requiert un pilote spécifique sur la machine virtuelle invitée. (De nombreuses distributions Linux intègrent ce pilote.) Par défaut, VirtualBox utilise la NAT, permettant ainsi aux logiciels Internet destinés aux utilisateurs finaux, tels que Firefox ou SSH, de fonctionner. Il est également possible de configurer un réseau ponté via une carte réseau hôte ou des réseaux virtuels entre les machines virtuelles invitées. Jusqu'à 36 cartes réseau peuvent être connectées simultanément, mais seules quatre sont configurables via l'interface graphique.
Pour une carte son, VirtualBox virtualise les périphériques Intel HD Audio, Intel ICH AC'97 et SoundBlaster 16.
Un contrôleur USB 1.1 est émulé, permettant ainsi à la machine virtuelle invitée de voir tous les périphériques USB connectés à l'hôte. Le pack d'extension propriétaire ajoute un contrôleur USB 2.0 ou USB 3.0 et, si VirtualBox fait office de serveur RDP , il peut également utiliser les périphériques USB du client RDP distant , comme s'ils étaient connectés à l'hôte, à condition toutefois que le client prenne en charge cette extension spécifique à VirtualBox (Oracle fournit des clients compatibles avec Solaris, Linux et les clients légers Sun Ray , et a promis la prise en charge d'autres plateformes dans les versions futures).
Logiciel
En l'absence de virtualisation matérielle, les versions 6.0.24 et antérieures de VirtualBox utilisaient une approche de virtualisation logicielle standard . Ce mode prend en charge les systèmes d'exploitation invités 32 bits fonctionnant sur les anneaux 0 et 3 de l' architecture Intel .
- Le système reconfigure le code du système d'exploitation invité, qui s'exécuterait normalement en mode veille (anneau 0), pour qu'il s'exécute en mode 1 sur le matériel hôte. Ce code contenant de nombreuses instructions privilégiées ne pouvant s'exécuter nativement en mode 1, VirtualBox utilise un gestionnaire d'analyse de code (CSAM) pour analyser récursivement le code en mode veille avant sa première exécution, identifier les instructions problématiques, puis fait appel au gestionnaire de correctifs (PATM) pour effectuer un correctif in situ . Ce dernier remplace l'instruction par un saut vers un fragment de code compilé équivalent, compatible avec la machine virtuelle, dans la mémoire de l'hyperviseur.
- Le code en mode utilisateur invité, exécuté dans l'anneau 3, s'exécute généralement directement sur le matériel hôte dans l'anneau 3.
Dans les deux cas, VirtualBox utilise CSAM et PATM pour inspecter et corriger les instructions fautives dès qu'une erreur se produit. VirtualBox contient également un recompilateur dynamique , basé sur QEMU , permettant de recompiler intégralement tout code en mode réel ou en mode protégé (par exemple, le code du BIOS, une machine virtuelle DOS ou le démarrage de tout système d'exploitation).
Grâce à ces techniques, VirtualBox pourrait atteindre des performances comparables à celles de VMware dans ses versions les plus récentes.
Cette fonctionnalité a été supprimée à partir de VirtualBox 6.1.
Caractéristiques
- Instantanés de la RAM et du stockage permettant de revenir à un état antérieur.
- Captures d'écran et captures vidéo d'écran
- La « touche hôte » permet de libérer le clavier et le curseur de la souris pour les restituer au système hôte s’ils sont capturés (couplés) au système invité, et d’accéder aux raccourcis clavier pour des fonctions telles que la configuration, le redémarrage et la capture d’écran. Par défaut, il s’agit de la touche située à droite Ctrl, ou à gauche sur Mac . presse-papiers partagé
- Dossiers partagés via le logiciel « modules invités »
- Pilotes et utilitaires spéciaux pour faciliter le passage d'un système à l'autre
- Possibilité de spécifier la quantité de RAM partagée, de mémoire vidéo et de capacité d'exécution du processeur
- Capacité à émuler plusieurs écrans
- Interaction en ligne de commande (en plus de l'interface graphique)
- API publique ( Java , Python , SOAP , XPCOM ) pour contrôler la configuration et l'exécution de la VM
- Pagination imbriquée pour AMD-V et Intel VT (uniquement pour les processeurs prenant en charge SLAT et avec SLAT activé)
- Prise en charge limitée de l'accélération graphique 3D (y compris OpenGL jusqu'à la version 3.0 (mais non incluse) et Direct3D 9.0c via la traduction Direct3D vers OpenGL de Wine dans les versions antérieures à 7.0 ou DXVK dans les versions ultérieures)
- Prise en charge SMP (jusqu'à 32 processeurs virtuels par machine virtuelle), depuis la version 3.0
- Téléportation (ou migration en direct )
- Accélération de la sortie vidéo 2D (à ne pas confondre avec l'accélération du décodage vidéo), depuis la version 3.1
- EFI est pris en charge depuis la version 3.1 (les invités Windows 7 ne sont pas pris en charge)
Émulation de stockage
- Possibilité de monter des disques durs virtuels et des images disque . Les images de disques optiques virtuels peuvent être utilisées pour démarrer et partager des fichiers avec des systèmes invités dépourvus de prise en charge réseau.
- Prise en charge NCQ des disques bruts et des partitions SATA , SCSI et SAS
- Connexion à chaud des disques SATA
- Mode de transfert direct pour disques SSD
- Mode de lecture directe pour lecteurs CD/DVD/BD – permet aux utilisateurs de lire des CD audio, de graver des disques optiques et de lire des DVD cryptés.
- Peut désactiver le cache d'E/S du système d'exploitation hôte
- Permet de limiter la bande passante d'E/S
- Contrôleurs de disquettes PATA , SATA , NVMe , SCSI , SAS , iSCSI
- Chiffrement des images disque de machines virtuelles à l'aide d' AES128/AES256
La prise en charge du stockage comprend :
- Accès direct au disque dur – permet aux partitions physiques du disque dur du système hôte d'apparaître dans le système invité.
- Prise en charge du format de disque de machine virtuelle VMware ( VMDK ) – permet l'échange d'images disque avec VMware
- Prise en charge des disques durs virtuels Microsoft
- Disques QEMU qed et qcow
- Disques au format HDD (version 2 uniquement ; les versions 3 et 4 ne sont pas prises en charge) utilisés par les produits de virtualisation Parallels
Limites
- L'accélération graphique 3D pour les invités Windows antérieurs à Windows Vista a été supprimée dans la version 6.1.
- VirtualBox a un débit de transfert très faible vers et depuis les périphériques USB2 .
- Pour les périphériques USB 3.0 , le transfert direct ne fonctionne pas sur les anciens systèmes d'exploitation invités, tels que Windows Vista et Windows XP , qui ne disposent pas des pilotes appropriés. Cependant, depuis la version 5.0, VirtualBox intègre un contrôleur USB 3.0 expérimental (le Renesas uPD720201 xHCI ), qui active l'USB 3.0 sur ces systèmes d'exploitation. Cela nécessite la modification de certains fichiers de configuration.
- Les additions invité pour macOS ne sont pas disponibles pour le moment.
- Les additions invité natives pour Windows 9x ( Windows 95 , 98 et ME ) ne sont pas disponibles. Il en résulte de faibles performances dues à l'absence d'accélération graphique et à la profondeur de couleur limitée par défaut. Des logiciels tiers externes sont disponibles pour activer la prise en charge du mode couleur 32 bits, ce qui permet d'obtenir de meilleures performances.
- La prise en charge d'EFI est incomplète ; par exemple, le démarrage EFI d'une machine virtuelle Windows 7 n'est pas pris en charge.
- Seules les anciennes versions de DirectX et du transfert OpenGL sont prises en charge (cette fonctionnalité peut être activée individuellement via l'option d'accélération 3D pour chaque machine virtuelle ).
- La mémoire vidéo est limitée à 128 Mio (256 Mio avec l'accélération vidéo 2D activée) en raison de difficultés techniques (le simple fait de modifier l' interface graphique pour permettre à l'utilisateur d'allouer plus de mémoire vidéo à une machine virtuelle ou de modifier manuellement le fichier de configuration d'une machine virtuelle ne fonctionnera pas et entraînera une erreur fatale ).
- Windows 95/98/98SE/ME ne peut être installé ou fonctionne de manière instable sur les processeurs d'une fréquence de 2 GHz et plus (jusqu'à Windows 98SE), ainsi qu'avec les processeurs modernes (AMD Zen et versions ultérieures ; Intel Tiger Lake et versions ultérieures) et la virtualisation matérielle (VirtualBox 6.1 et versions ultérieures). Ce problème est dû à une erreur de programmation de ces systèmes d'exploitation. Un correctif open source a été développé pour résoudre ce problème, qui corrige également un bug de Windows 95/98/98SE provoquant le plantage du système sur les processeurs rapides récents.
- VirtualBox 7.0 et versions ultérieures sont nécessaires pour exécuter une machine virtuelle Windows 11 vierge. La compatibilité totale avec Windows 11 est assurée à partir de la version 7.0.14 de VirtualBox.
- Le contrôleur NVMe fourni ne prend pas en charge les systèmes d'exploitation invités Windows.
Système d'exploitation hôte
Les systèmes d'exploitation pris en charge comprennent :
- Windows 10 64 bits et versions ultérieures. La prise en charge de Windows 64 bits a été ajoutée avec VirtualBox 1.5. La prise en charge de Windows 32 bits a été supprimée dans la version 6.0.
- La prise en charge de Windows 2000 a été supprimée dans la version 1.6.
- La prise en charge de Windows XP a été supprimée dans la version 5.0.
- La prise en charge de Windows Vista a été supprimée dans la version 5.2.
- La prise en charge de Windows 7 (64 bits) a été supprimée dans la version 6.1.
- La prise en charge de Windows 8 (64 bits) a été supprimée dans la version 7.0.
- La prise en charge de Windows 8.1 (64 bits) a été supprimée dans la version 7.1.
- Windows Server 2019 et versions ultérieures.
- La prise en charge de Windows Server 2003 a été supprimée dans la version 5.0.
- La prise en charge de Windows Server 2008 a été supprimée dans la version 6.0.
- La prise en charge de Windows Server 2008 R2 a été supprimée dans la version 7.0.
- La prise en charge de Windows Server 2012 et 2016 a été supprimée dans la version 7.1.
- distributions Linux
- macOS de la version 11 ( Big Sur ) à la version 14 ( Sonoma ), versions ARM et Intel :
- La prise en charge préliminaire de Mac OS X (version bêta) a été ajoutée avec VirtualBox 1.4, la prise en charge complète avec la version 1.6.
- La prise en charge de Mac OS X 10.4 (Tiger) et des versions antérieures a été supprimée avec VirtualBox 3.1.
- La prise en charge de Mac OS X 10.5 (Leopard) a été supprimée avec VirtualBox 4.2.
- La prise en charge de Mac OS X 10.6 (Snow Leopard) et 10.7 (Lion) a été supprimée avec VirtualBox 5.0.
- La prise en charge de Mac OS X 10.8 (Mountain Lion) a été supprimée avec VirtualBox 5.1.
- La prise en charge de Mac OS X 10.9 (Mavericks) a été supprimée avec VirtualBox 5.2.
- La prise en charge de Mac OS X 10.10 (Yosemite) et OS X 10.11 (El Capitan) a été supprimée avec VirtualBox 6.0.
- La prise en charge de macOS 10.12 (Sierra) a été officiellement supprimée avec VirtualBox 6.1 (mais à partir de la version 6.1.16, il est toujours possible de l'installer et de l'exécuter).
- La prise en charge de macOS 10.13 (High Sierra) et de macOS 10.14 (Mojave) a été officiellement supprimée avec VirtualBox 7.0.
- La prise en charge de macOS 10.15 (Catalina) a été officiellement supprimée avec VirtualBox 7.1.
- Oracle Solaris
Ajouts pour les invités
Certaines fonctionnalités nécessitent l'installation du « VirtualBox Extension Pack » à code source fermé :
- Prise en charge d'un contrôleur USB 2.0/3.0 virtuel (EHCI/xHCI) (À partir de VirtualBox 7.0, cette fonctionnalité a été intégrée à la version GPL. )
- Démarrage PXE pour les cartes Intel.
- Prise en charge de la webcam
Bien que VirtualBox soit gratuit et distribué sous une licence open source, le pack d'extension VirtualBox est distribué sous la licence VirtualBox Personal Use and Evaluation License (PUEL). L'utilisation personnelle du pack d'extension est gratuite, mais les utilisateurs commerciaux doivent acheter une licence.
Les additions invité sont installées dans chaque machine virtuelle invitée qui les prend en charge ; le pack d’extension est installé sur l’hôte exécutant VirtualBox.