The open source VirtualBox hypervisor for PCs and servers got a major release on Tuesday when Oracle – which controls the VirtualBox project – kicked out version 4.1.
The big change with VirtualBox 4.1 is that both the hypervisor and the guest virtual machine partitions that ride atop of the hypervisor can address more main memory and virtualize it. VirtualBox is a hosted or type 2 hypervisor, meaning that it runs atop an operating system, which provides services to the hypervisor. Because of this, the underlying operating system has to support the extra main memory before the VirtualBox virtual machine monitor (VMM) can see it, divvy it up, and dole it out to guest VMs.
At the moment, Windows, Linux, Solaris, and x64-based Mac OS machines can be hosts for VirtualBox, and they all can address 1TB or more of main memory on servers using 64-bit Core and Xeon processors from Intel, or Athlon and Opteron processors from Advanced Micro Devices. With VirtualBox 4.1, the hypervisor can now address up to 1TB as well, and the virtual memory that can be allocated to guest VMs has been radically expanded from 16GB up to 1TB as well. That memory bump matches the 1TB capacities that you can find on mainstream two-socket and four-socket x64 servers these days, so it's not really exotic as much as it's necessary.
The upshot of the hypervisor being able to span 1TB of physical main memory as presented by the operating system (the machine could have more than this, of course, but the VMM won't be able to access it and carve it up) is that VirtualBox can now take on very much larger workloads. It is not clear that Oracle, which has its own Xen hypervisor variant called Oracle VM (not surprisingly), wants companies to use VirtualBox on those big jobs, but now it is possible – in theory, at least.
Oracle says that on a large x64 box with 1TB of physical memory, it can now support "over a thousand VMs on a single host". This will be particularly useful for Oracle's aspirations in virtual desktop infrastructure (VDI), since Solaris and Oracle's Red Hat clone, Oracle Linux, and VirtualBox are at the heart of Oracle's latest VDI Version 3.3 stack, announced two weeks ago. (VirtualBox was the hypervisor layer for the virtual PC images managed and served by the VDI stack from the beginning.)
With VirtualBox 4.0, announced in December 2010, the focus was on 32-bit clients – Oracle's techies tweaked the hypervisor so 32-bit guests could address more than 1.5GB or 2GB, the previous limits on 32-bit virtual machines.
The 4.0 hypervisor could deliver up to 32 virtual CPUs to a guest, and that limit remains the same with the 4.1 update.
In addition to the fatter memory, VirtualBox 4.1 can now clone VMs from existing guests or from snapshots of those guests. The GUI interface, which was revamped with the 4.0 version of the hypervisor, can create full clones; the VBoxManage console can also create full clones as well as linked clones, which the GUI cannot do.
A linked clone means creating an exact copy of a virtual machine that is linked back to the original such that if you change a setting in the original VM, it cascades through to the clone VMs that are linked to it. (If you kill the original, you also wipe out the linked clones.) A normal clone is a copy that is not linked to itself and can be changed independently from the original VM.
In any event, VMware has had this capability for some time in its View and ESX Server/ESXi hypervisors, and now VirtualBox has reached parity on this feature.
VirtualBox 4.1 includes support for the latest releases of Windows, Linux, Solaris, and Mac OS as both guests and hosts, and keeps the legacy OS/2, NetWare, and other OS support in guests that makes hypervisors useful.
Significantly, VirtualBox 4.1 can support the Aero effects and window-transparency effects in Microsoft's Windows 7. Oracle has also improved the scripting capabilities of VirtualBox so that system administrators can programmatically set up, configure, and tweak guest partitions.
The core VirtualBox hypervisor is available as an open source package, which you can download here. The software is also distributed openly under a GPL v2 license.
However, starting with VirtualBox 4.0, Oracle has carved out certain functions – USB 2.0 peripheral support, VirtualBox RDP, PXE booting – and has rolled them into closed source extension packs that hook into the binary and open source versions of the core VirtualBox hypervisor. It would not be surprising to see Oracle eventually charge for these extensions, but thus far, it has not.
Those extensions do have a licensing provision that says they can only be used for personal use and evaluation, and once you roll them into production, you're supposed to buy a support contract for VirtualBox from Oracle. A support contract costs $50 per PC per year, but it's not clear what Oracle is charging for servers – it used to be $500 per year for a four-socket box when Sun Microsystems was a freestanding company.
Innotek, the German software company that originally created VirtualBox to support OS/2 Warp on Windows and Linux boxes, distributed more than 20 million downloads between the end of 2007, when the product was first available, to the end of 2009, just before Oracle took control of Sun. In May last year, Oracle said the cumulative downloads were 26 million, and the run rate was around 40,000 per day.
In the past year, the download rate has accelerated to just under 50,000 per day and the cumulative downloads for VirtualBox now stand at 46 million – which makes it one of the most popular pieces of software that Sun or Oracle ever had control over. ®