World Library  
Flag as Inappropriate
Email this Article


Article Id: WHEBN0008934260
Reproduction Date:

Title: VirtualBox  
Author: World Heritage Encyclopedia
Language: English
Subject: Oracle VDI, TurnKey Linux Virtual Appliance Library, Virtual machine, VMDK, L4Linux
Publisher: World Heritage Encyclopedia


Logo of Oracle/Sun/innotek VirtualBox since 2010.
Running Kubuntu Live CD with Oracle VM VirtualBox on Windows 7
Original author(s) innotek GmbH
Developer(s) Oracle Corporation
Initial release 15 January 2007 (2007-01-15)
Stable release 4.3.20[1] (21 November 2014 (2014-11-21))
Written in C, C++
Operating system Microsoft Windows, Mac OS X, Linux and Solaris[2]
Size 86–115 MB depending on platform[3]
Type Virtual machine
License Base Package (USB support only for USB 1.1): GNU General Public License version 2 (Optionally CDDL for most files of the source distribution), "Extension Pack" (including USB 2.0 support): PUEL
Website .org.virtualboxwww

Oracle VM VirtualBox (formerly Sun VirtualBox, Sun xVM VirtualBox and innotek VirtualBox), a virtualization software package for x86 and AMD64/Intel64-based computers from Oracle Corporation, forms part of Oracle's family of virtualization products. innotek GmbH first developed the product; Sun Microsystems purchased it in 2008; Oracle has continued development since 2010.

The VirtualBox package installs on an existing host operating system as an application; this host application allows additional guest operating systems, each known as a Guest OS, to load and run, each with its own virtual environment.

Supported host operating systems include Linux, Mac OS X, Windows XP, Windows Vista, Windows 7, Windows 8, Solaris, and OpenSolaris; there are also ports to FreeBSD[4] and Genode.[5]

Supported guest operating systems include versions and derivations of Windows, Linux, BSD, OS/2, Solaris, Haiku and others.[6] Since release 3.2.0, VirtualBox also allows limited virtualization of Mac OS X guests on Apple hardware, though OSX86 can also be installed using VirtualBox.[7][8]

Since version 4.3 (released in October 2013[9]), Microsoft Windows guests on supported hardware can take advantage of the recently implemented WDDM driver included in the guest additions; this allows Windows Aero to be enabled along with Direct3D support.

Guest Additions should be installed in order to achieve the best possible experience.[10] The Guest Additions can be installed inside a virtual machine after the installation of the guest operating system. They consist of device drivers and system applications that optimize the guest operating system for better performance and usability.[11]


Logo of VirtualBox OSE, 2007-2010

VirtualBox was initially offered by innotek GmbH from Weinstadt, Germany under a proprietary software license, making one version of the product available at no cost for personal or evaluation use, subject to the VirtualBox Personal Use and Evaluation License (PUEL).[12] In January 2007, based on counsel by LiSoG, innotek GmbH released VirtualBox Open Source Edition (OSE) as free and open-source software, subject to the requirements of the GNU General Public License (GPL), version 2.[13]

innotek GmbH also contributed to the development of OS/2 and Linux support in virtualization[14] and OS/2 ports[15] of products from Connectix which were later acquired by Microsoft. Specifically, innotek developed the “additions” code in both Microsoft Virtual PC and Microsoft Virtual Server, which enables various host-guest OS interactions like shared clipboards or dynamic viewport resizing.

Sun Microsystems acquired innotek in February 2008.[16][17][18]

Oracle Corporation acquired Sun in January 2010 and re-branded the product as "Oracle VM VirtualBox".[19][20][21]


With version 4 of VirtualBox, released in December 2010, the core package is free software released under GNU General Public License version 2 (GPLv2). This is the fully featured package, excluding some proprietary components not available under GPLv2. These components provide support for USB 2.0 devices, Remote Desktop Protocol (RDP) and Preboot Execution Environment (PXE) for Intel cards and are released as a separate "VirtualBox Oracle VM VirtualBox extension pack" under a proprietary Personal Use and Evaluation License (PUEL), which permits use of the software for personal use, educational use, or evaluation, free of charge.[22]

Oracle defines personal use as any situation in which one person installs the software, and only that individual, and their friends and family, use the software. Oracle does not care if that use is for commercial or non-commercial purposes.[23] Oracle would consider it non-personal use, for example, if a network administrator installed many copies of the software on many different machines, on behalf of many different end-users. That type of situation would require purchasing a special volume license.

Prior to version 4, there were two different packages of the VirtualBox software. The full package was offered free under the PUEL, with licenses for other commercial deployment purchasable from Oracle. A second package called the VirtualBox Open Source Edition (OSE) was released under GPLv2. This removed the same proprietary components not available under GPLv2.[23][24]

Virtualbox requires the use of the Open Watcom compiler to build the BIOS since version 4.2.[25]

Although VirtualBox has experimental support for Mac OS X guests, the end user license agreement of Mac OS X does not permit the operating system to run on non-Apple hardware, enforced within the operating system by calls to the Apple System Management Controller (SMC) in all Apple machines, which verifies the authenticity of the hardware.[26]

Emulated environment

Running Ubuntu Live CD under VirtualBox on Ubuntu

Users of VirtualBox can load multiple guest OSs under a single 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 number of mechanisms including a common clipboard and a virtualized network facility. Guest VMs can also directly communicate with each other if configured to do so.[27]

Software-based virtualization

In the absence of hardware-assisted virtualization, VirtualBox adopts a standard software-based virtualization approach. This mode supports 32-bit guest OSs which run in rings 0 and 3 of the Intel ring 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 offending instructions whenever a fault occurs. VirtualBox also contains a dynamic recompiler, based on QEMU to recompile any real mode or protected mode code entirely (e.g. BIOS code, a DOS guest, or any operating system startup).[28]

Using these techniques, VirtualBox can achieve a performance comparable to that of VMware.[29][30]

Hardware-assisted virtualization

VirtualBox supports both Intel's VT-x and AMD's AMD-V hardware-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 host at ring 0 in VMX non-root mode rather than in ring 1.

VirtualBox supports some guests (including 64-bit guests, SMP guests and certain proprietary OSs) only on hosts with hardware-assisted virtualization.

Device virtualization

The system emulates hard disks in one of three disk image formats:

  1. a VirtualBox-specific container format, called "Virtual Disk Image" (VDI), storing files (with a .vdi suffix) on the host operating system
  2. VMware Virtual Machine Disk Format (VMDK)
  3. Microsoft Virtual PC VHD format

A VirtualBox virtual machine can, therefore, use disks previously created in VMware or Microsoft Virtual PC, as well as its own native format. VirtualBox can also 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 controller) and SAS controllers to which hard drives can be attached.

VirtualBox has supported Open Virtualization Format (OVF) since version 2.2.0 (April 2009).[31]

Both ISO images and host-connected physical devices can be mounted as CD/DVD drives. For example, the DVD image of a Linux distribution can be downloaded and used directly by VirtualBox.

By default VirtualBox provides graphics support through a custom virtual graphics-card that is VESA compatible. The Guest Additions for Windows, Linux, Solaris, OpenSolaris, or OS/2 guests include a special video-driver that increases video performance and includes additional features, such as automatically adjusting the guest resolution when resizing the VM window[32] or desktop composition via virtualized WDDM drivers .

For an Ethernet network adapter, VirtualBox virtualizes these Network Interface Cards:[33]

  • 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)

The emulated network cards allow most guest OSs to run without the need to find and install drivers for networking hardware as they are shipped as part of the guest OS. A special paravirtualized network adapter is also available, which improves network performance by eliminating the need to match a specific hardware interface, but requires special driver support in the guest. (Many distributions of Linux ship 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 also be configured. Up to 36 network adapters can be attached simultaneously, but only four are configurable through the graphical interface.

For a sound card, VirtualBox virtualizes Intel HD Audio, Intel ICH AC'97 and SoundBlaster 16 devices.[34]

A USB 1.1 controller is emulated so that any USB devices attached to the host can be seen in the guest. The proprietary extension pack adds a USB 2.0 controller and, if VirtualBox acts as an RDP server, it can also use USB devices on the remote RDP client as if they were connected to the host, although only if the client supports this VirtualBox-specific extension (Oracle provides clients for Solaris, Linux and Sun Ray thin clients that can do this, and have promised support for other platforms in future versions).[35]

Feature set

  • 64-bit guests (hardware virtualization support is required)
  • Snapshots
  • Seamless mode - the ability to run virtualized applications side by side with your normal desktop applications
  • Shared clipboard
  • Shared folders
  • Special drivers and utilities to facilitate switching between systems
  • Command line interaction (in addition to the GUI)
  • Public API (Java, Python, SOAP, XPCOM) to control VM configuration and execution[36]
  • 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
Storage emulation features
  • NCQ support for SATA, SCSI and SAS raw disks and partitions
  • Pass-through mode for solid-state drives
  • Pass-through mode for CD/DVD/BD disks - allows to play audio CDs, burn optical disks, play encrypted DVD disks
  • Can disable host OS I/O cache
  • Allows to limit IO bandwidth
  • PATA, SATA, SCSI, SAS, iSCSI, floppy disk controllers
Storage support
  • 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 VirtualBox to exchange disk images with VMware
  • Microsoft VHD support
  • QEMU qed and qcow disks
  • HDD format disks (only version 2; version 3 and 4 are not supported) used by Parallels virtualization products
Since 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
  • Run and control guest applications from the host – for automated software deployments
Since version 4.0
  • The PUEL/OSE separation was given up 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)
Since version 4.1
  • Windows Aero support (experimental)
  • Virtual machine cloning
Since version 4.2
  • Virtual machine groups - allows you to manage a group of virtual machines as a single unit (power them on or off, snapshot them, etc.)
  • Some VM settings can be altered during a VM execution
  • Support up to 36 NICs in case of the ICH9 chipset
  • Support for limiting network IO bandwidth
  • Can automatically run VMs on a host system startup (except on Windows host)
Since version 4.3
  • VM video capturing support
  • Host touch devices support (GUI passes host touch-events to guest)/USB virtualization of such devices


  • VirtualBox doesn't support USB3.
  • VirtualBox has a very low transfer rate from and to USB devices.[37][38]
  • Even though VirtualBox is an open source product some of its features are supplied only in a binary form under a commercial license (see The extension pack below).

The extension pack

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

  • Support for a virtual USB 2.0 controller (EHCI)
  • VirtualBox RDP: support for proprietary remote connection protocol developed by Microsoft and Citrix.
  • PXE boot for Intel cards


Portable-VirtualBox is a free and open source software tool that lets you run any operating system from a usb stick without separate installation. [39]

See also


  1. ^ "Changelog for VirtualBox 4.3". 9 September 2014. Retrieved 27 November 2014. 
  2. ^ a b "Downloads – Oracle VM VirtualBox". 
  3. ^ "VirtualBox downloads". 
  4. ^ "VirtualBox – FreeBSD Wiki". 2009-06-16. Retrieved 2009-07-04. 
  5. ^ "Release notes for the Genode OS Framework 14.02". February 28, 2014. Retrieved March 19, 2014. 
  6. ^ "Guest_OSes". VirtualBox. 2009-06-12. Retrieved 2009-07-04. 
  7. ^ "How to Install Mac OS X Snow Leopard in VirtualBox on Windows 7". 
  8. ^ Kevin Purdy (May 4, 2010). "VirtualBox 3.2 Beta Virtualizes Mac OS X (On Macs)". Lifehacker. 
  9. ^ "Oracle VM VirtualBox 4.3 Now Available" (Press release). Oracle Corporation. 2013-10-15. Retrieved 2014-10-15. Generally available today, Oracle VM VirtualBox 4.3 delivers the latest enhancements to the world’s most popular, free and open source, cross-platform virtualization software. 
  10. ^ "Run Ubuntu Linux Within Windows Using VirtualBox". 
  11. ^ "Chapter 4 Guest Additions". VirtualBox. 
  12. ^ "VirtualBox_PUEL – VirtualBox". VirtualBox. 2008-09-10. Retrieved 2009-07-04. 
  13. ^ "GPL". VirtualBox. Retrieved 2009-07-04. 
  14. ^ Ronny Ong   View profile    More options. "Additions Version History – microsoft.public.virtualpc | Google Groups". Retrieved 2009-07-04. 
  15. ^ "Connectix Announces First Virtual Computing Solution for OS/2 Users; Virtual PC Lets Enterprises Run OS/2 and Windows Concurrently on a Single PC | Business Wire | Find Articles at BNET". 2002-07-01. Retrieved 2009-07-04. 
  16. ^ "Sun Microsystems Announces Agreement to Acquire innotek, Expanding Sun xVM Reach to the Developer Desktop" (Press release). Sun Microsystems. February 12, 2008. Retrieved 2008-02-12. 
  17. ^ "E-Commerce News: Business: Sun Gets Desktop Virtualization Chops With Innotek Buy". Retrieved 2009-07-04. 
  18. ^ "Sun Welcomes Innotek". Sun Microsystems, Inc. Retrieved 2008-02-26. On February 20 Sun completed the acquisition of innotek 
  19. ^ "Oracle and Virtualization".  
  20. ^ "VirtualBox Joins Oracle's Enterprise Virtualization Portfolio". systemnews. February 25, 2010. Retrieved March 6, 2010. 
  21. ^ Hawley, Adam (February 26, 2010). "The Oracle VM Product Line Welcomes Sun!". Oracle Virtualization Blog. Oracle Corporation. Archived from the original on 2010-04-07. Retrieved March 6, 2010. 
  22. ^ "VirtualBox_PUEL". VirtualBox. 2010-04-19. Retrieved 2011-04-20. 
  23. ^ a b "Licensing: Frequently Asked Questions". VirtualBox. Retrieved 2013-09-24. 
  24. ^ "Editions". VirtualBox. Retrieved 2009-07-04. 
  25. ^ "Copyright file of Virtualbox 4.2 in Wheezy-backports". Debian. 
  26. ^ "Interview with Andy Hall, Product Manager for Oracle VM VirtualBox". 
  27. ^ "Internal Networking". VirtualBox. Retrieved 2013-07-31. 
  28. ^ "VirtualBox Manual, Section 10.4 Details about software virtualization". VirtualBox. Retrieved 2011-04-25. 
  29. ^ Dr. Oliver Diedrich (2007-01-15). "heise open – 15.01.07 – VirtualBox". Retrieved 2009-07-04. 
  30. ^ Jason Perlow (2010-05-21). "Virtualization Smackdown 2: Oracle VM VirtualBox 3.2 vs. VMware Workstation 7.1". ZDNET. Retrieved 2010-05-24. 
  31. ^ "VirtualBox changelog". Retrieved 2010-02-18. 
  32. ^ "Chapter 4. Guest Additions". VirtualBox. Retrieved 2011-01-17. 
  33. ^ "Chapter 6. Virtual networking". VirtualBox. Retrieved 2011-01-17. 
  34. ^ "Chapter 3. Configuring Virtual Machines". VirtualBox. Retrieved 2011-01-17. 
  35. ^ "VirtualBox 4.1.4 Manual – Chapter 7 Remote Virtual Machines". Oracle. 2011-10-03. Retrieved 2011-11-19. 
  36. ^ "Python API to the VirtualBox VM". Sun Microsystems. 2008-09-05. Archived from the original on 2008-09-10. Retrieved 2008-09-06. 
  37. ^ "#2973 (USB extremely slow with USB-2.0 (very similar to #464)) – Oracle VM VirtualBox". Oracle. Retrieved 10 October 2014. 
  38. ^ "#4261 (Slow transfer speeds from USB disk) – Oracle VM VirtualBox". Oracle. Retrieved 10 October 2014. 
  39. ^ Portable-VirtualBox

External links

  • Official website
  • Sub-site at Oracle
  • Virtualbox Downloads
  • All downloads index (not to be removed). E.g. for guest additions
  • What is virtualization?
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.

Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.