|
|
This article or section needs to be updated. Parts of this article or section (those related to consistency and information regarding the latest version 1.5 release) are no longer up to date. All other information should be current. Please update the article to reflect recent events, and remove this template when finished. |
|
| VirtualBox | |
|---|---|
VirtualBox 1.4.1 beta 1 running Windows XP on a Mac OS X host |
|
| Developer | InnoTek |
| Latest release | 1.5.4 / 2007-12-29 |
| OS | Linux, Mac OS X, Windows |
| Genre | Virtual machine |
| License | Proprietary / GPL (limited) |
| Website | www.virtualbox.org |
VirtualBox by innotek is a commercial and proprietary (with a limited GPL version) x86 virtualizer for Linux, Mac OS X (beta version for 10.4 Tiger) and Windows 32-bit and 64-bit hosts supporting FreeBSD, Linux, OpenBSD, OS/2 Warp and Windows as guest operating systems.[1] After several years of development, VirtualBox OSE (Open source edition), a limited, open-source version, was released under the GNU General Public License (GPL) in January 2007. Compared with the other established commercial virtualization software such as VMware Workstation and Microsoft Virtual PC, VirtualBox lacks some features, but in turn provides others. Such unique features are running virtual machines remotely over the Remote Desktop Protocol (RDP), iSCSI support and USB support with remote devices over RDP. VirtualBox supports Intel's hardware virtualization VT-x and has experimental support for AMD's AMD-V, but doesn't use either of them by default.[2] According to a 2007 survey by DesktopLinux.com, VirtualBox is the third most popular software package for running Windows programs on Linux desktops.[3]
Contents |
Emulated environment
VirtualBox emulates the following hardware components:
- Hard disks are emulated in a special container format called "Virtual Disk Images" (VDI files), which is, at present, incompatible with the formats used by other virtualizing solutions. In addition, VirtualBox has a unique feature in that it can connect to iSCSI targets and use them as virtual hard disks as well.
- As a graphics adapter, by default, VirtualBox virtualizes a standard VESA card with 8 MB RAM, which can be adjusted. With the Guest Additions (for Windows or Linux guests) comes a special video driver that allows for better performance and features such as dynamically adjusting the guest resolution when the VM window is resized.
- As an Ethernet network adapter, VirtualBox virtualizes an AMD PCNet card.
- As a sound card, VirtualBox virtualizes an Intel ICH AC'97 device.
- In the proprietary release (not in the open-source edition), a USB controller is emulated so that any USB devices attached to the host can be seen in the guest. 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.
VirtualBox attempts to run as much guest code natively (i.e. directly on the host processor) as possible. This works well for user-mode code running in the guest's ring 3 of the Intel ring architecture. However, the guest's ring-0 code, which will usually contain lots of privileged instructions, will need to be intercepted. VirtualBox has a rather novel approach to fix this conflict: It tricks the guest operating system to actually execute its ring-0 code in ring 1, which is normally unused on the Intel architecture. If problems arise, VirtualBox has a built-in dynamic recompiler, like other virtualizers do. VirtualBox's recompiler is based on the free and open-source QEMU. In addition, however, VirtualBox automatically disassembles and, in many situations, patches the guest code to avoid future recompilations, as these are comparably expensive.[4] As a result, both the guest's ring-3 and ring-0 code can run natively most of the time, and with this combination of "traditional" recompiling and actual code patching, VirtualBox achieves a performance that is comparable to that of VMware.[5]
VirtualBox 1.5.x
VirtualBox version 1.5.2 was released October 18, 2007 for the Microsoft Windows and Linux platforms, and the version for Mac OS X is still in beta. Version 1.5.0 included over 50 new features, enhancements, and bug fixes. The most notable among these improvements is a "seamless" window integration view similar to Unity in VMware Fusion and Coherence in Parallels Desktop for Mac, virtual serial ports, and support for 64-bit Windows hosts.[6]
Proprietary version vs. free and open source edition
There are two versions of the VirtualBox software. The full VirtualBox package comes under a proprietary license which allows using the software free-of-charge for personal and educational use and evaluation of the product.[7] Licenses for commercial use of the full VirtualBox package can be purchased from innotek. A second version called the VirtualBox Open Source Edition (OSE) was released under the GPL, from which the following features are missing:[8]
- The built-in Remote Desktop Protocol (RDP) server.
- USB support (see above) and the combination of running the RDP server with support of remote USB devices.
- The iSCSI support for virtual hard disks (see above).
The open source edition was accepted into Debian unstable and Ubuntu Gutsy (7.10) on 30 August 2007.[9] [10]
See also
References
- ^ "Status: Guest OSes" page on VirtualBox website
- ^ "Developer FAQ" page on VirtualBox website
- ^ 2007 Desktop Linux Survey results revealed.
- ^ "Architecture" page on VirtualBox website.
- ^ Test report by German website heise.de after the open source release, published Jan 15, 2007.
- ^ http://www.virtualbox.org/wiki/Changelog
- ^ VirtualBox license page.
- ^ "Editions" page on VirtualBox website
- ^ Changelog of the Debian package
- ^ Changelog of the Ubuntu package


