When it comes to virtualisation on the desktop, two products stand front and centre: VMware Workstation and VirtualBox. The former is the long-standing original keeper of the flame, from the company that gave us PC-centric virtualisation technology as we know it. The latter is an open source project now under the stewardship of Oracle, with its own strongly competitive set of features.
Which one's superior? It's never been a better time to ask, now that VMware Workstation is out in a new incarnation, and VirtualBox has a new release. We put the two side by side to see how they shaped up and whether or not the free-to-use VirtualBox 4.2 has advantages over the pay-to-use VMware Workstation 9.
Both products run on Windows or Linux hosts, and both support a broad range of Windows, Linux, and Unix guests. Whereas VirtualBox supports Mac OS X hosts and guests as well, VMware offers a separate product, VMware Fusion, for the Mac.
I tested Workstation and VirtualBox on an Intel Core i7-3770K CPU with 16GB of RAM, 128GB of SSD system-volume storage, and 2TB of additional hard disk space. The host operating system was Windows 7.
VMware Workstation 9
It's difficult to go wrong with VMware Workstation. It's not just a top-notch VM host, it sports a level of polish and attention to detail worthy of a $249 desktop virtualization product. In addition to all the features users of such a product might need, Workstation has some capabilities that users might never have thought about.
Version 9 adds such a bevy of new features to the product that listing them all in one place threatens to become overwhelming. The most visible are support for Windows 8 and USB 3.0; improved graphics drivers, which include OpenGL support for Linux guests; nested virtualization, which allows - among other things - running Hyper-V in a guest (at your own risk!); and a number of remote-control and VM management improvements.
You need no prior experience with VMware Workstation to appreciate its smartly organized interface. Fire up the program and its default tab provides you with shortcuts to many common actions such as creating a new machine, spinning up an existing one, and setting preferences. The library of existing VMs listed in a left-hand pane can be searched by typing -- handy if you're using Workstation to corral together many VMs.
If you set up a new VM in Workstation and provide it with installation media for one of a number of common OSes, Workstation will automatically detect the OS in question, then prompt you independently for OS-relevant setup information. For example, Workstation will prompt you for the product key for Windows, which edition of Windows to install, and a default user account and password; then it will perform the setup with no user intervention needed.
The resulting VM will even have VMware's guest tools already installed, which enables such goodies as direct copy and paste of files between host and guest. One really powerful feature unlocked via guest tools is Unity Mode, which allows programs from the VM to be run directly on the host desktop. Unity-managed apps are normally distinguished by a red border and an icon next to the buttons, but the icon can be disabled and the border changed to another color or eliminated entirely. Note that Unity can only be used on local VMs, not ones accessed from a remote instance of VMware Workstation.
VMware Workstation's clean and well-organized interface lets you search for multiple VMs in your library -- local or remotely hosted -- by typing into the search box at top left.
Another powerful integration feature is the ability to map a virtual disk to a drive letter on the host so that files can be copied in or out of that drive by hand. Note that drives can only be mapped while the virtual machine that uses them is powered off, to avoid inconsistencies.
When you take snapshots of a given VM, you're presented with a highly readable diagram of all the snapshots you've taken and which one you're currently using. This removes a lot of the confusion from such a useful feature, and it makes it harder to accidentally delete or jump to the wrong snapshot. The AutoProtect function can make snapshots of a given VM on a schedule, which amounts to VMware's own version of System Restore.
Aside from the regular VMware interface, VMs can also be remotely accessed via the open source VNC protocol or shared out to other VMware Workstation users on the same network. Virtual machines can also be uploaded to or from an instance of VMware vSphere -- a neat way to make Workstation into a local staging ground for to-be-deployed machines.
In the category of "most oddly useful cool feature," there's the "capture movie" function. Audio and video output from a given VM can be piped directly to a movie file - a great way to create demos, walkthroughs, or documentation.
VMware Workstation's main window presents you with quick shortcuts to many common tasks. Note that some, such as virtualizing a physical machine, are available only through external products.
Oracle VM VirtualBox 4.2 Right up front I'll say that VirtualBox, even in its newest incarnation, isn't a feature-for-feature match for VMware Workstation. It is, however, a very good way to get most of the core functionality of Workstation without paying the full retail price, especially if you're using the open source version. (The binary version of VirtualBox, which includes proprietary extensions such as USB 2.0 support, is free for personal use, but requires commercial licensing for professional deployment.)
The best way to distinguish the two programs is by a word I used a lot with VMware Workstation: polish. When VirtualBox has a feature also found in Workstation, most of the time it's Workstation's implementation of that feature that really shines.
Consider the VM setup process. In VirtualBox, this involves using a wizard that prompts you for which operating system you're going to be installing in the VM. However, it doesn't provide the kind of extended setup automation features that Workstation does. The wizard does set a recommended memory size for the VM and maybe a couple of other internal options, but the actual OS installation process still has to be done manually.
A new feature in VirtualBox is the ability to group VMs, even in nested groups, for the sake of organization.
The same sorts of things apply elsewhere. USB support in VirtualBox is limited to USB 2.0, whereas VMware Workstation can emulate USB 3.0. Also, while VirtualBox can connect to USB devices (such as cameras or scanners) on the host, it's far easier to get this feature working in VMware Workstation, and VirtualBox doesn't connect to and release hardware as reliably as VMware Workstation does.
In another vein: VirtualBox has a way to allow remote connections to VMs, but it uses a peculiar variation on Microsoft's Remote Desktop Protocol. It's rather odd that open source VirtualBox uses a twist on RDP, while the commercially licensed VMware Workstation uses VLC. (To be fair, the remote desktop support is one of VirtualBox's proprietary extensions.)
If VirtualBox has limitations like these, where does it shine? In lots of little ways, which do make up for many of its limitations. A given virtual machine can support up to 32 virtual CPU cores per machine, with the maximum depending on your host hardware's capabilities. On my test system (8 cores, 4 physical and 4 logical), VirtualBox exposed up to 16 for use with VMs. I also like the "execution cap" function, which lets you specify a hard limit for host CPU utilization -- a feature not explicitly provided by VMware Workstation.
VirtualBox's snapshotting and system cloning features include the ability to clone a VM from a shadow copy instead of a full duplicate.
Snapshotting in VirtualBox is at least as good as what's available in VMware Workstation. As in Workstation, you can take multiple branching snapshots of a given VM. Even handier is the ability to clone VMs, which can be done either by making a full, discrete copy of the VM or by using a snapshot as the basis for the clone. Using a snapshot saves both time and disk space.
VirtualBox also shines with support for a variety of virtual-disk formats: VMDK, VHD, HDD (from Parallels), and QED/QCOW (from QEMU). This makes VirtualBox handy for trying out a slightly broader range of virtual machine types than VMware Workstation.
Finally, anyone looking for a free virtualisation solution might ask how VirtualBox shapes up against VMware's also-free VMware Player. The main difference is in product licensing, as VirtualBox is a little more liberally licensed than VMware Player.
One feature VirtualBox has but VMware Workstation doesn't is the ability to cap a virtual machine's processor usage. It also lets you cap network bandwidth for a VM.
The open source edition of VirtualBox is GPLv2-licensed, while the full binary versions of VirtualBox are under a "Personal Use and Evaluation License," which precludes deployment in a business scenario. VMware Player, on the other hand, is closed source through and through. Although it's free for personal noncommercial use, it must be formally licensed in a commercial setting. (Player is also not supported by VMware, except when purchasing a license for VMware Fusion Professional.)
VirtualBox also has full implementations of a few features that VMware Player has in more limited incarnations, including snapshotting, virtual-network management, and cloning of workstations. There are some VMware-only functions, such as upload/download to vSphere, implemented in VMware Workstation only, but not in either VirtualBox or VMware Player.
For those willing to put their money down, VMware Workstation is the easy winner. It isn't just the performance, but the polish and the cross-integration with other VMware products that make Workstation worth the money. That said, VirtualBox is no slouch, and it has a few useful items that aren't available in either Workstation or VMware Player.
If you have the cash to spend, VMware is the easy choice. If you're on a tight budget or need a product with liberal licensing, go with VirtualBox.