Open-source x86 virtualization application
“ virtual box ” redirects here. For virtual computers in general, see virtual machine
Oracle VM VirtualBox ( once Sun VirtualBox, Sun xVM VirtualBox and Innotek VirtualBox ) is a type-2 hypervisor for x86 virtualization developed by Oracle Corporation. VirtualBox was primitively created by Innotek GmbH, which was acquired by Sun Microsystems in 2008, which was in turn acquired by Oracle in 2010.

VirtualBox may be installed on Microsoft Windows, macOS, Linux, Solaris and OpenSolaris. There are besides ports to FreeBSD [ 4 ] and Genode. [ 5 ] It supports the creation and management of guest virtual machines running Windows, Linux, BSD, OS/2, Solaris, Haiku, and OSx86, [ 6 ] equally well as limited virtualization of macOS guests on Apple hardware. [ 7 ] [ 8 ] For some guest operating systems, a “ Guest Additions ” package of device drivers and system applications is available, [ 9 ] [ 10 ] which typically improves performance, specially that of graphics, and allows changing the resolution of the guest OS automatically when the window of the virtual machine on the host OS is resized. [ 11 ] Released under the terms of the GNU General Public License and, optionally, the CDDL for most files of the source distribution, VirtualBox is loose and open-source software, though the Extension Pack is proprietorship software .

history.

Logo of VirtualBox OSE, 2007–2010 VirtualBox was first offered by Innotek GmbH from Weinstadt, Germany, under a proprietorship software license, making one version of the product available at no cost for personal or evaluation use, national to the VirtualBox Personal Use and Evaluation License ( PUEL ). [ 12 ] In January 2007, based on advocate by LiSoG, Innotek GmbH released VirtualBox Open Source Edition ( OSE ) as free and open-source software, topic to the requirements of the GNU General Public License ( GPL ), version 2. [ 13 ] Innotek GmbH besides contributed to the development of OS/2 and Linux support in virtualization [ 14 ] and OS/2 ports [ 15 ] of products from Connectix which were late acquired by Microsoft. specifically, Innotek developed the “ additions ” code in both Windows Virtual personal computer and Microsoft Virtual Server, which enables versatile host–guest o interactions like shared clipboards or active viewport resize. Sun Microsystems acquired Innotek in February 2008. [ 16 ] [ 17 ] [ 18 ] Following the skill of Sun Microsystems by Oracle Corporation in January 2010, the product was re-branded as “ Oracle VM VirtualBox ”. [ 19 ] [ 20 ] [ 21 ] In December 2019, VirtualBox started supporting entirely hardware-assisted virtualization, dropping support for Software-based one. [ 22 ] [ 2 ]

Release history.

Version 3.2
  • Mac OS X Server guest support – experimental
  • Memory ballooning (not available on Solaris hosts)
  • RAM deduplication (Page Fusion) for Windows guests on 64-bit hosts
  • CPU hot-plugging for Linux (hot-add and hot-remove) and certain Windows guests (hot-add only)
  • Deleting snapshots while the VM is running
  • Multi-monitor guest setups in the GUI, for Windows guests
  • LSI Logic SAS controller emulation
  • Remote Desktop Protocol (RDP) video acceleration via a non-free extension
  • Run and control guest applications from the host – for automated software deployments
Version 4.0
  • The PUEL/OSE separation was abandoned in favor of an open source base product and a closed source extension pack that can be installed on top of the base product. As part of this change, additional components of VirtualBox were made open source (installers, documentation, device drivers)
  • Intel HD audio codec emulation
  • Intel ICH9 chipset emulation
  • A new VM storage scheme where all VM data is stored in one single folder to improve VM portability
  • Several UI enhancements including a new look with VM preview and scale mode
  • On 32-bit hosts, VMs can each use more than 1.5 GB of RAM
  • In addition to OVF, the single file OVA format is supported
  • CPU use and I/O bandwidth can be limited per VM
  • Support for Apple DMG images (DVD)
  • Multi-monitor guest setups for Linux/Solaris guests (previously Windows only)
  • Resizing of disk image formats from Oracle, VDI (VirtualBox disk image), and Microsoft, VHD (Virtual PC hard disk)
Version 4.1
  • Windows Aero support (experimental)
  • Virtual machine cloning
Version 4.2
  • Virtual machine groups – allows management of a group of virtual machines as a single unit (power them on or off, take snapshots, etc.)
  • Some VM settings can be altered during VM execution
  • Support up to 36 NICs in case of the ICH9 chipset
  • Support for limiting network I/O bandwidth
  • Can automatically run VMs on host system startup (except on Windows hosts)
Version 4.3
  • VM video-capture support
  • Host touch device support (GUI passes host touch events to guest)/USB virtualization of such devices
  • Paravirtualization support for Windows and Linux guests to improve time-keeping accuracy and performance
  • USB3 controller based on Intel’s hardware implementation.[24] It is supported by any Windows version starting from Windows 8, any Linux kernel starting from 2.6.31 and Mac OS X starting from version 10.7.4.[ citation needed]
  • Bidirectional drag and drop support for Windows, Linux and Solaris guests
  • VM disk image encryption via a non-free extension
  • VM output scaling and HiDPI displays support
  • Hotplugging of SATA disks using GUI
  • USB traffic capturing
  • VMs can be disconnected from a GUI session and run in background[25]
  • AVX, AVX-2, AES-NI, SSE 4.1/4.2 instructions (if supported by the host CPU)
  • Support for exporting virtual machines to Oracle Cloud
  • A file manager which allows to control the guest file system and copy files from/to it
  • VMSVGA GPU driver for Linux hosts
  • Surround speakers setup support
  • Support for hardware-assisted nested virtualization on AMD CPUs
  • Support for importing virtual machines from Oracle Cloud
  • Added nested virtualization support for Intel CPUs (it was already available for AMD CPUs) starting with Intel Core i5 Broadwell
  • Experimental support for file transfers via drag-n-drop only for Windows host and guests (disabled by default, must be enabled using VBoxManage)
  • Support for virtio-scsi for hard disks and optical drives, including boot support
  • Support for hosts with up to 1024 CPUs
  • DXVA (hardware accelerated video decoding) support for Windows guests
  • NVRAM support for EFI which improves compatibility with many guest OSes
  • Software keyboard for entering any keys to a guest
  • Guest CPU use monitoring
  • Dropped support for software CPU virtualization: a CPU with hardware virtualization support is now required
  • Dropped support for PCI passthrough for Linux hosts
  • Soft (virtual) keyboard
Version 7.0 (in development)
  • Secure Boot support for guest operating systems[27]
  • TPM 2.0 module

Virtualization.

Users of VirtualBox can load multiple node OSes under a unmarried host operating-system ( host OS ). Each guest can be started, paused and stopped independently within its own virtual machine ( VM ). The user can independently configure each VM and run it under a choice of software-based virtualization or hardware assisted virtualization if the underlying host hardware supports this. The host OS and guest OSs and applications can communicate with each other through a act of mechanisms including a park clipboard and a virtualized network facility. Guest VMs can besides directly communicate with each other if configured to do so. [ 28 ]
VirtualBox supports both Intel ‘s VT-x and AMD ‘s AMD-V hardware-assisted virtualization. Making use of these facilities, VirtualBox can run each guest VM in its own separate address-space ; the guest OS ring 0 code runs on the master of ceremonies at ring 0 in VMX non-root mode rather than in ring 1. [ citation needed ] Starting with version 6.1, VirtualBox entirely supports this method acting. [ 22 ] [ 2 ] Until then, VirtualBox specifically supported some guests ( including 64-bit guests, SMP guests and certain proprietorship OSs ) entirely on hosts with hardware-assisted virtualization. [ citation needed ]

Devices and peripherals.

VirtualBox emulates arduous disks in three formats : the native VDI ( virtual Disk Image ), [ 29 ] the VMDK of VMware and the VHD of Microsoft Windows. It therefore supports disks created by other hypervisor software. VirtualBox can besides connect to iSCSI targets and to raw partitions on the host, using either as virtual hard disks. VirtualBox emulates IDE ( PIIX4 and ICH6 controllers ), SCSI, SATA ( ICH8M accountant ) and SAS controllers to which hard drives can be attached. VirtualBox has supported Open Virtualization Format ( OVF ) since version 2.2.0 ( April 2009 ). [ 30 ] Both ISO images and physical devices connected to the host can be mounted as four hundred or DVD drives. VirtualBox supports running operating systems from bouncy CDs and DVDs. By default, VirtualBox provides graphics support through a customs virtual graphics-card that is VBE or UEFI GOP compatible. The Guest Additions for Windows, Linux, Solaris, OpenSolaris, or OS/2 guests include a special video-driver that increases video operation and includes extra features, such as mechanically adjusting the guest resolving power when resizing the VM window [ 31 ] or desktop composition via virtualized WDDM drivers. For an Ethernet network adapter, VirtualBox virtualizes these Network Interface Cards : [ 32 ]

  • AMD PCnet PCI II (Am79C970A)
  • AMD PCnet-Fast III (Am79C973)
  • Intel Pro/1000 MT Desktop (82540EM)
  • Intel Pro/1000 MT Server (82545EM)
  • Intel Pro/1000 T Server (82543GC)
  • Paravirtualized network adapter (virtio-net)

The emulate net cards allow most guest os to run without the need to find and install drivers for networking hardware as they are shipped as part of the guest OS. A particular paravirtualized network adapter is besides available, which improves network operation by eliminating the necessitate to match a specific hardware interface, but requires special driver digest in the guest. ( many distributions of Linux embark with this driver included. ) By default, VirtualBox uses NAT through which Internet software for end-users such as Firefox or ssh can operate. Bridged networking via a host network adapter or virtual networks between guests can besides be configured. Up to 36 network adapters can be attached simultaneously, but only four are configurable through the graphic interface. For a sound tease, VirtualBox virtualizes Intel HD Audio, Intel ICH AC’97 and SoundBlaster 16 devices. [ 33 ] A USB 1.1 control is emulated indeed that any USB devices attached to the host can be seen in the guest. The proprietary extension pack adds a USB 2.0 or USB 3.0 controllers and, if VirtualBox acts as an RDP server, it can besides use USB devices on the outside RDP node as if they were connected to the horde, although only if the node supports this VirtualBox-specific extension ( Oracle provides clients for Solaris, Linux and Sun Ray reduce clients that can do this, and have promised support for other platforms in future versions ). [ 34 ]

In the absence of hardware-assisted virtualization, versions 6.0 and earlier of VirtualBox could adopt a standard software-based virtualization approach. This mode supports 32-bit guest OSs which run in rings 0 and 3 of the Intel ring computer architecture .

  • The system reconfigures the guest OS code, which would normally run in ring 0, to execute in ring 1 on the host hardware. Because this code contains many privileged instructions which cannot run natively in ring 1, VirtualBox employs a Code Scanning and Analysis Manager (CSAM) to scan the ring 0 code recursively before its first execution to identify problematic instructions and then calls the Patch Manager (PATM) to perform in-situ patching. This replaces the instruction with a jump to a VM-safe equivalent compiled code fragment in hypervisor memory.
  • The guest user-mode code, running in ring 3, generally runs directly on the host hardware in ring 3.

In both cases, VirtualBox uses CSAM and PATM to inspect and patch the hurt instructions whenever a mistake occurs. VirtualBox besides contains a dynamic recompiler, based on QEMU to recompile any actual mode or protected mode code wholly ( e.g. BIOS code, a DOS node, or any operational organization inauguration ). [ 35 ] Using these techniques, VirtualBox can achieve a performance comparable to that of VMware. [ 36 ] [ 37 ] The feature was dropped starting with VirtualBox 6.1. [ 22 ] [ 2 ]

Features.

  • Snapshots of the RAM and storage that allow reverting to a prior state.
  • Screenshots and screen video capture
  • “Host key” for releasing the keyboard and mouse cursor to the host system if captured (coupled) to the guest system, and for keyboard shortcuts to features such as configuration, restarting, and screenshot. By default, it is the right-side CTRL key.[38][39]
  • Mouse pointer integration, meaning automatic coupling and uncoupling of mouse cursor when moved inside and outside the virtual screen, if supported by guest operating system.
  • Seamless mode – the ability to run virtualized applications side by side with normal desktop applications
  • Shared clipboard
  • Shared folders through “guest additions” software[40]
  • Special drivers and utilities to facilitate switching between systems
  • Ability to specify amount of shared RAM, video memory, and CPU execution cap
  • Ability to emulate multiple screens[41]
  • Command line interaction (in addition to the GUI)
  • Public API (Java, Python, SOAP, XPCOM) to control VM configuration and execution[42]
  • Nested paging for AMD-V and Intel VT (only for processors supporting SLAT and with SLAT enabled)
  • Limited support for 3D graphics acceleration (including OpenGL up to (but not including) 3.0 and Direct3D 9.0c via Wine’s Direct3D to OpenGL translation)
  • SMP support (up to 32 virtual CPUs per virtual machine), since version 3.0
  • Teleportation (aka Live Migration)
  • 2D video output acceleration (not to be mistaken with video decoding acceleration), since version 3.1
  • EFI has been supported since version 3.1 (Windows 7[43][44] guests are not supported)[45]

storehouse emulation.

storehouse accompaniment includes :

  • Raw hard disk access – allows physical hard disk partitions on the host system to appear in the guest system
  • VMware Virtual Machine Disk (VMDK) format support – allows exchange of disk images with VMware
  • Microsoft VHD support
  • QEMU qed and qcow disks
  • HDD format disks (only version 2; versions 3 and 4 are not supported) used by Parallels virtualization products

Limitations.

Host support.

The support operate systems include : [ 66 ]

Guests.

Some features require the installation of the closed-source “ VirtualBox Extension Pack ” : [ 2 ]

  • Support for a virtual USB 2.0/3.0 controller (EHCI/xHCI)
  • VirtualBox RDP: support for the proprietary remote connection protocol developed by Microsoft and Citrix Systems.
  • PXE boot for Intel cards.
  • VM disk image encryption
  • Camera / webcam support[69]

While VirtualBox itself is complimentary to use and is distributed under an open source license the VirtualBox Extension Pack is licensed under the VirtualBox Personal Use and Evaluation License ( PUEL ). personal manipulation is barren but commercial users need to purchase a license. Oracle routinely checks log files for downloads of the VirtualBox Extension Pack from nonresidential IP addresses and contacts unaccredited users to enforce submission. [ 70 ] [ failed verification ] While Guest Additions are installed within each desirable guest virtual machine, the Extension Pack is installed on the host running VirtualBox .

Licensing.

The core box is, since interpretation 4 in December 2010, free software under GNU General Public License interpretation 2 ( GPLv2 ). The separate “ VirtualBox Oracle VM VirtualBox extension gang ” providing support for USB 2.0 and 3.0 devices, Remote Desktop Protocol ( RDP ), disk encoding, NVMe and Preboot Execution Environment ( PXE ) bang is under a proprietorship license, called Personal Use and Evaluation License (PUEL), which permits habit of the software for personal function, educational use, or evaluation, rid of charge. [ 71 ] Since VirtualBox version 5.1.30 [ 72 ] Oracle defines personal habit as the initiation of the software on a individual horde computer for non-commercial purposes. [ 73 ] Unlike some software using a proprietary license, the “ VirtualBox Oracle VM VirtualBox annex pack ” is not source-available since it includes closed-source components, which does not make the source code publicly available. [ 74 ] anterior to interpretation 4, there were two different packages of the VirtualBox software. The wax software was offered gratis under the PUEL, with licenses for other commercial deployment purchasable from Oracle. A second gear software called the VirtualBox Open Source Edition (OSE) was released under GPLv2. This removed the lapp proprietary components not available under GPLv2. [ 73 ] [ 74 ] Building the BIOS for VirtualBox since version 4.2 [ citation needed ] requires the practice of the Open Watcom compiler, [ 75 ] for which the Sybase Open Watcom Public License is approved as “ Open Source ” by the Open Source Initiative [ 76 ] but not as “ detached ” by the Free Software Foundation or under the Debian Free Software Guidelines. [ 75 ] [ 77 ] Although VirtualBox has experimental support for macOS guests, the end user license agreement of macOS does not permit the operate system to run on non-Apple hardware, and this is enforced within the engage arrangement by calls to the Apple System Management Controller ( SMC ) in all Apple machines, which verifies the authenticity of the hardware. [ 78 ]

Derivatives.

A commercial port of VirtualBox OSE with built-in confirm for Direct X 12.1 / Vulkan 3D API at heart virtual machines has been released by the independent subscriber of the FreeRDP project, called Thincast Workstation. [ citation needed ]

See besides.

References.

Leave a Reply

Your email address will not be published.