In-Depth

Virtualization Hits the Desktop

Software for creating and running virtual machines on the PC goes mainstream.

There's a good deal of confusion surrounding "desktop" virtualization. For purposes of Virtualization Review magazine, we'll set our definitions now. When we say "desktop virtualization," we're talking about the remote delivery of a user's desktop environment from a server. That is, the terminal is a thin client or dummy, and the desktop image and functionality is delivered from a server.

Virtualization Review believes that vendors are driving much of the innovation in this growing segment of the industry. To that end, we'll be introducing you to new products (and often, new vendors), and perform comparisons of products that fall into a similar category. This month we cover: PC virtualization for your desktop.

Virtualization Review believes that vendors are driving much of the innovation in this growing segment of the industry. To that end, we'll be introducing you to new products (and often, new vendors), and perform comparisons of products that fall into a similar category. This month we cover: PC virtualization for your desktop.


PC virtualization, which we're covering in this review, refers to a desktop operating system that hosts another OS inside it. Thus, all the functionality lives inside the PC, with no server role involved. The OS being hosted is known as the guest. Multiple guests, and multiple OSes, are possible with this setup. The only limitations are the capabilities of the host computer.

Potential uses for this technology include:

  • A need to use an app that isn't available on the host OS
  • Frequent testing or demonstration of software
  • Application compatibility issues; for instance, running an instance of Windows XP inside Windows Vista, when an app won't work with the newer OS.

The test desktop was a dual-core Intel Centrino running at 1.8GHz with 2GB of RAM. I also used other systems on my network to test VM networking and to transfer VMs created on one system to a second one. A powerful system such as this isn't a prerequisite, but the more memory and processing power you have, the better VMs -- and the applications installed on them -- will run.

Microsoft Virtual PC 2007
Virtual PC has long been considered a laggard when compared to VMware Workstation in terms of ease of use and support for different configurations, but the 2007 edition makes up a lot of ground. It can be downloaded for free, and it's also provided as part of an MSDN subscription. It's exceptionally quick and easy to install, with no options or parameters.

Once installed and running, you have a simple menu of choices. You can load an existing VM, start an existing VM or create a new VM. If you're going to create a new VM, Virtual PC provides an easy-to-use wizard to walk you through the process. The wizard lets you either create a VM or add an existing VM to the menu.

Key: 1: Virtually inoperable or nonexistent 5: Average, performs adequately 10: Exceptional
  Virtual PC 2007 Parallels Workstation VMware Workstation 6.0.2
 

Free
Microsoft Corp.
800-642-7676

$39.95
Parallels
425-282-6400

$189
VMware Inc.
877-486-9273

Installation (20%) 9.0 9.0 9.0
Features (20%) 7.0 9.0 10.0
Ease of use (20%) 9.0 9.0 9.0
Administration (20%) 8.0 8.0 10.0
Documentation (20%) 8.0 8.0 9.0

Overall Rating

8.2 8.6 9.2

First you choose what operating system you want to install. Virtual PC provides selections for a wide range of Windows OSes, plus, incongruously, OS/2. If you want to install Linux or another OS, simply select the Other option.

The process of selecting an OS doesn't appear to do anything other than tell Virtual PC how much memory and disk space to allocate, which you can then adjust on the next page of the wizard. Of course, the usual rules with any OS apply: The more memory you can allocate, the faster it will run. In this and other reviews, I allocated 0.5GB to each VM, which gave me the ability to run multiple VMs simultaneously. Because Virtual PC uses a hosted hypervisor, you have to make sure the underlying OS has enough memory, too.

Once you've created a VM, or loaded an existing VM into the menu, you can set its properties -- including ports, network interfaces, CD-ROM and floppy drives, sound cards and so on -- to the actual hardware. In practice, most of them just work, even if you transfer the VM image from one machine to another. Virtual PC does a good job of automatically mapping the network and selected I/O to the hardware.

Once you've configured a VM to your satisfaction, you load an OS -- my default was Windows XP -- and launch that VM by pressing the Start button on the console. The OS runs in a window, and your mouse will typically work in that window as it does on the underlying OS.

Performance is better than in Virtual PC 2004, but still lags behind VMware Workstation. While the experience is authentic, you know you're running on a VM because of the performance lag.

Microsoft is starting to use Virtual PC as a way to provide evaluations of its software offerings, especially if they're in beta versions. That's a great way to eliminate the installation hassles for software, especially if you're still in the evaluation stage. Overall, it's not yet the best desktop virtualization solution out there, but it's free, easy to use and works in a wide variety of situations.

Virtual PC 2007
[Click image to view larger version.]
The Virtual PC 2007 console provides a mature and intuitive interface for working with virtual machines.

Parallels Workstation 2.2
Parallels (formerly SWsoft) has several virtualization products, including the Parallels Workstation that I looked at. This product installs easily and quickly, but requires an activation key in order to use. You can register on the site and receive a 15-day trial activation key.

Once installed, Parallels immediately wants to check for product updates, then presents a compact but easy-to-understand console for creating and managing VMs. You can create a VM by using the wizard available from within the console. Workstation gives you a very wide range of OSes from which to choose, starting from the OS family (Windows, Linux, FreeBSD, MS-DOS and others) and then choosing the exact distro or version. I chose Windows XP as my first image. It didn't give me choices to adjust any parameters during image creation, instead using defaults the entire way. You can adjust the defaults through the Edit Configuration menu selection, and they will apply to new VMs or existing VMs.

When my image was created, Parallels warned me that the VM had a maximum allocated size of 32GB, and I didn't quite have that amount free on the test machine. It could have avoided this message by letting me select the maximum size of the VM during creation. The initial size is 4MB, so it's certainly compact enough at the beginning.

You can load the OS at this point by placing the DVD into the computer's DVD drive and starting the VM. Parallels Workstation has an intuitive way of doing so, with a big green "Power On" button. There's also a corresponding red "Power Off" button.

Before you get too far, Parallels recommends installing a set of utilities called Parallels Tools. Parallels Tools let you easily switch between virtual environments and the host OS by clicking the most appropriate window. They also let you use shared folders to transfer the data between the guest and the host OS.

In practice, loading and running Windows XP on the VM was easy. The OS installed almost automatically, and pushing the Power On button started the VM and the OS. While I didn't test on a system with chips from AMD or Intel that are specially made for virtualization, Parallels tells me that it can take advantage of that architecture to significantly improve the performance of VMs, almost to the level of a native installation.

Parallels also provides an image tool that enables the wizard-based creation of a hard disk image or CD/DVD image. This makes it easier to create new VMs of specific builds, especially if they already exist on another system.

Parallels says its Mac virtualization product, which I didn't test, is a generation ahead of its PC product. Still, this is a capable implementation for desktop virtualization, with good ease of use, performance and features. It's not free like Virtual PC, but it does provide a better feature set and better performance, especially if you're using the Intel or AMD virtualization-tuned chips.

Parallels
[Click image to view larger version.]
The Parallels administration windows let you view and edit the resources allocated to each virtual machine.

VMware Workstation 6.0.2
Compared to the other products here, VMware's offering is the most highly developed and mature available -- and it shows in all aspects of the interface and feature set. VMware Workstation includes the VM manager, the VMware player and a utility for managing virtual networks.

Setting up a new VM is a simple matter. Using a wizard, you select the OS, maximum size of the virtual disk, how you want that virtual disk set up and used, and what OS you want to install. There are a large number of choices here. Once you've created the VM, you can change some of the configuration through the Settings menu selection, which includes a really nice slide bar to adjust the amount of memory to allocate.

The VM starts at the compact size of just more than 0.5MB (that's just the VM itself -- not a VM with a guest OS loaded). I set an 8GB maximum size on it. Installing the OS is simply a matter of inserting the disk in the DVD drive and starting the VM. The guest installed normally on the VM and started as expected after a reboot and restart of the VM. The performance of XP under the VM was noticeably slower than in native mode, but not bad overall, and it was quite usable.

VMware Workstation also offers a broad array of features for working with VMs. It has particularly good features for working with networks of VMs, as well as physical systems. Just as importantly, it offers a wide array of options for working with your VM and switching back and forth between the VM and physical host.

VMware Workstation
[Click image to view larger version.]
VMware Workstation provides a simple approach to starting, stopping and checking the virtual machine settings.

I was so impressed with the concept of virtual machine networks that I took the time to actually set up a simple one. I took one of my Windows XP images and copied it onto two other systems in my network, using the VMware player on each to run it. I used my main test system to configure the network, using automatic bridges and virtual network mapping as the foundation. You can also set up virtual DHCP and NAT with a couple clicks of the mouse button. The entire process took me a little more than an hour, and most of that time was spent moving images around.

While the other products tested here are easy to use and extremely useful, it's easy to see that VMware still has a significant lead in this technology. The user interface for setting up and maintaining VMs is neither too complex nor too simplistic, and provides users with just the right amount of control and usability over features. The easily configured virtual networking also works well and is enormously convenient.

Of course, you pay a significant price premium for that technology and ease of use. VMware is by far the most expensive product examined here. The other products work, and work well enough for most uses. But at this point in time, VMware is in the unique position of being the premium brand in a young and growing market. My take is that it offers more, but it's up to you and your situation to determine if the premium delivers the goods.

Featured

Subscribe on YouTube