Microsoft Virtual PC: Good Enough -- for the Price

The fact that it's free is one of the best aspects of Microsoft's Virtual PC 2004. Where it falls short, say readers, is in keeping up with its more well-known and feature-rich competitor, VMware Workstation."If I had to pick between the two, Microsoft Virtual PC or VMware Workstation, the only thing really going for Virtual PC right now is cost," says James Kovacs, an independent consultant based in Calgary, Alberta, Canada. "It's not keeping up with the marketplace."

Microsoft bought the core technology for Virtual PC from Connectix in February 2003, when it also acquired Virtual Server (see last month's Reader Review, "Virtual Server Has Real Fans"). Unlike Virtual Server, however, readers say Virtual PC has seen few enhancements since then.

"When Microsoft bought Connectix and re-branded the Virtual PC product as a Microsoft product, I compared it with VMware and they were roughly even in terms of hardware and operating system support," Kovacs says. "It has been a number of years and Virtual PC really hasn't gotten any major upgrades. It's gotten support for Windows XP SP2 and Windows Server 2003, but no major enhancements. It's unfortunate."

That may change once Virtual PC 2007 comes out next year. So far, though, Microsoft
has been pretty tightlipped on what to expect for new features, beyond the obvious
need to support Windows Vista. For now, users are getting by with what they
have and hoping for incremental improvements -- without an incremental increase
in price.

"The biggest thing is that it's free," says Ken Cuddeback, associate
professor at Weber State University in Ogden, Utah. "It works and it's
a life saver. If we have to go to VMware for the features, we'll do that."
Many readers are in fact doing that, despite VMware Workstation's $199 price
tag.

Saving by Virtualizing
Readers say virtualization is helpful not only for cutting down on hardware costs, since it doesn't require any extra hardware to support extra operating systems, but also for easing testing and development tasks. For example, Kovacs uses Virtual PC when doing development for several of his clients. He creates a virtual machine for each client, and can then develop specifically for that client without affecting anything else on his desktop. "I do a lot of enterprise development and server development and it's a pretty powerful and useful solution," he says.

Cuddeback uses Virtual PC primarily to save on hardware in his networking classes. He says it's a great tool, because it lets every student use just one laptop or desktop computer, while learning about a variety of operating systems and networking scenarios. "I've been using it for a couple of years now and it has brought new life to my classes," he says. "Everyone still needs their own computer, but they can have all of their operating systems on one computer and not ruin the base OS. It's just been a joy to use."

He even finds Virtual PC useful for teaching Linux. "We use Linux and it's fine," he says. "It doesn't support it as well or as elegantly as VMware, but it does OK."

When I'm 64-bit
While just doing OK is good enough for most, some readers say there are real areas for improvement in Virtual PC. Specifically, it does not yet support 64-bit virtual machines, either as a host or a guest, and it can't handle virtual switches and routers. It doesn't support USB devices or hardware 3-D. The latter will become increasingly important as more developers start using Windows Presentation Foundation (WPF), since that uses DirectX. Its snapshot function is also less robust than VMware's.

The lack of 64-bit support is the real showstopper for Russell Williams, a technology consultant at Fidelity Information Services in Alpharetta, Ga. Williams considered using Virtual PC to do development for his firm's banking customers. "We produce a banking product and need to run various tests on it," he says. "We try and mimic what's out in banks as far as operating systems, amount of memory and things like that. It's a lot easier to have a virtual system than to try and mimic 10 different versions of hardware and patch levels." Virtual PC couldn't fit the bill.

In the end, he went with VMware Workstation. "With VMware, I can use my 64-bit hardware and, even though my desktop is a 32-bit, it will still let me install Windows 64 and test it," he says.

The lack of 64-bit host support also irks Kovacs. "My main system for business is a 64-bit Windows XP box, but I can't run Virtual PC on it because Virtual PC doesn't support 64-bit hosts, which is annoying," he says. Instead, he uses Virtual PC on his 32-bit laptop.

He'd also like to see 64-bit guest support. "VMware has that and it would be nice, although it isn't a huge deal. The biggest problem is that you can't run it on a 64-bit host." According to Microsoft, this will change slightly when Virtual PC 2007 comes out. The new version will support Windows Vista as both a host and a guest, as well as Windows Vista 64-bit as a host (but not as a guest).

Single Snapshot
Another feature where Virtual PC falls short of VMware is snapshots. "VMware has a really intuitive snapshot," Williams says. "Whenever I want, I can take a snapshot, play with the setup, click revert and it will go back. You can't do that as easily with Virtual PC."

Kovacs says the difference is that Virtual PC's snapshots are one-time-only. "With VMware, I'll install the base OS and then take a snapshot, and then I'll go ahead and install SQL Server and take a snapshot there, and then I'll install BizTalk Server on top of that and take a snapshot there. So if anything goes wrong, rather than having to unroll the entire install, I can go back to a known good condition and start there," he says.

With Virtual PC, you can only take one snapshot, usually just after installing the base operating system. Also, VMware allows live snapshots, while Virtual PC requires that you shut down the virtual machine first.

What To Expect in Virtual PC 2007

Microsoft has been relatively tightlipped about the new features and functions it’s planning to add to the next version of Virtual PC, due next year. “I’d like them to be a bit more forthcoming about the improvements and some of the things that will be [introduced in] 2007, but the Virtual PC team seems to be completely incognito,” says James Kovacs, an independent consultant in Calgary, Alberta, Canada. He doesn’t see many blogs or product announcements about Virtual PC 2007, a scenario that seems very unlike Microsoft.

“I haven’t seen mention of how they’re planning to compete with VMware Workstation. I haven’t seen how it fits in their Virtual Server plans,” he says. “They’re doing a lot on the server side [with Virtual Server], but client-wise, I don’t see big commitment there.”

Microsoft has announced a few key features you can expect to see in Virtual PC 2007:

Support for Windows Vista as a host

Support for Windows Vista as a guest

Support for Windows Vista 64-bit as a host

Improved performance (compared to Virtual PC 2004)

The company said it plans to release the product “in early 2007.”-- J.C.

Cuddeback would also like to see more virtual networking support. "My biggest wish is to be able to integrate virtual switches and routers into [Virtual PC] and there's just no way to do that," he says. "In the VMware world, you have more flexibility. I'll probably have to end up going that way if Microsoft doesn't do any better."

Virtual PC is also noticeably slower than VMware Workstation, according to most readers. "I have 2GB of RAM in all my workstations, and it needs it all," Cuddeback says. "In our networking classes, we've learned some tricks, like bringing up Windows Server 2003 first and then minimizing it to cut the memory usage down to nothing. That helps, but it's still slow." Each of his workstations runs four or five virtual machines.

For Kovacs, the most nagging issue is the lack of USB, audio, ISO DVD and hardware 3-D support. "You can use a mouse, but if you want to plug in a USB key, you can't do it," he says. "So just popping in USB devices and having them show up in the guest doesn't happen, although VMware does support that. Also, I find that Virtual PC's audio is unusable. Whenever you have sound coming out of the guest, it's always crackly and broken up, so I just end up turning it off."

Kovacs sees the lack of hardware 3-D support becoming a major issue in the near future. "At the moment, it isn't a huge deal, but I suspect it will become more of a problem in the development community in the next two or three years because Windows Presentation Foundation leverages DirectX quite heavily," he says. "If you're doing any heavy-duty Windows WPF work, you just won't be able to effectively use a virtual environment to do so, and that will be a problem."

Kovacs' sentiment really sums up the biggest problem: Microsoft is failing
to keep up with the marketplace and what users need from their virtualization
software. "Four years ago, there was nothing you couldn't do in a Virtual
PC environment," he says. "Now there are more scenarios cropping up
where it's not a good fit because the virtualization hasn't kept up with the
type of development people are doing."