My answer? VMware Server 1.0.8 (the latest in the 1.x series).
UPDATE: Here in 2014 the conclusions in this old post are no longer sustainable. In fact Oracle’s open source VirtualBox is now better than VMware on a number of levels. For the data center I now prefer KVM on Linux (specifically Red Hat Enteprise) to VMware’s ESX for running either Unix or Windows guests. For the Windows platform in the data center I suppose that VMware remains the best bet, as Microsoft’s offerings still lack the flexibility and feature set of their nearest competitor.
The free VMware server now comes in basically 3 flavors. The original 1.0 series, the 2.0 series and the new ESXi. For my purposes ESXi is really more a dedicated server platform that lacks the flexibility of the other two products, especially on a laptop or multi-purpose desktop PC. You wouldn’t want to load it on your Dad’s machine so he can play all those old DOS games he still loves.
Sun’s VirtualBox 2 comes in an open source and a closed source version. The open source version is free for all purposes. The closed source (”commercial”) version is free for personal use and evaluation only. This is a distinction with a difference, because key features of interest to desktop users, like USB support, are missing from the open source version of VirtualBox.
VirtualBox 2 is fast. It is also fairly easy on system resources. It has a pretty good administration console. Graphics emulation is good as well.
The same could be said of VMware 2 though. Although it takes up a bit more hard disk space, in my comparison tests it performs just as well as VirtualBox.
Here’s what I find lacking in both these 2.0 products:
No support for USB 1.0 from either product. VMware 2.0 is supposed to support USB 2.0, but failed in my tests. Sun explicitly states that the “free” open source version of VirtualBox explicitly does not support USB at all, citing “licensing” issues. The “non free”, commercial, closed source, version of VirtualBox is supposed to support USB, but it didn’t work for me either. VMware Server 1.0.8 continues to support both USB 1.0 and USB 2.0, with some fiddling that is described in other posts on this blog and elsewhere.
VirtualBox is also difficult to configure as a real server that keeps running even after the user interface is closed. Like VMware Workstation or Player, if you close the interface, the guest dies. This can be annoying at times, and limits its usefulness for testing server applications. VMware Server 1.0, like it’s more “advanced” successor, installs as a real server from the beginning.
VirtualBox also has trouble running VMware machine images for Windows XP guests, due to incompatibilties in the emulation of graphics cards and hard disk controllers. Both VMware Server 1.0 and 2.0 will run these kinds of VMware images without difficulty, although once a VMware 1.0 image is “upgraded” to the 2.0 format, backward compatibility is lost (a reason not to “upgrade” images?).
VMware Server 2’s console is pretty, but sometimes becomes unresponsive at inopportune moments. VMware Server 1.0’s console is an acquired taste, but it’s stable.
In sum, although it suffers from the stigma of a 1.0 label, VMware Server 1.0.8 is, in my opinion, actually more capable than either of these 2.0 products. Much like Apache 1.x, its owners may want to kill it, but it continues to have significant value for its many users. Unfortunately, both these virtualization products are owned by commercial software companies so in the end the needs of the community may not prevail as they have with the Apache project.
Of course, if that happens then there’s always QEMU.