VirtualPC 2004 Versus VMWare 4.5?
BackNBlack writes "Ars Technica has an interesting comparison shootout between Microsoft's VirtualPC 2004 and VMWare Workstation 4.5. Has VirtualPC improved since Microsoft bought it from Connectix? It looks as though VMWare is really the choice of those who can afford it. I'm also a little surprised that Microsoft is not as compatible as it could be, given the competition."
I've used both and I have to say that Microsoft's Virtual PC is ASS-slow. VMWare is actually usable and has far more features and compatibility.
VMWare is superior in all regards. I've had significant problems running Linux under Virtual PC where VMWare handles it without any problems at all. Also, I've found that VMWare has drivers for most host operating systems to enable drive sharing, video, and sound. VirtualPC's guest os driver set is pretty bad. Virtual PC is a lot cheaper (free for us, as Solution Providers) but if I ever really need to get something done, VMWare is the only way to go.
The article is incorrect in stating that VirtualPC 2004 does not support using ISOs as optical drives. It certainly supports this functionality and I use it all of the time. There is a menu item called Capture ISO which lets you select an ISO and mount it like a CD-ROM or DVD-ROM drive.
I've used both products a good deal, mostly for the purpose of beta testing operating systems and development software. I've not noticed any serious speed differences. VMWare is most definitely more configurable. However I get VirtualPC 2004 for "free" with my MSDN Universal subscription so I can't really beat that.
It should also be noted that while VMWare does run on Linux, VirtualPC runs on Macintosh. It is still supported, although a hardware difference causes it to fail on G5 CPUs because these CPUs do not permit little-endian mode. A new version will be out shortly to accomodate.
Also, configuring bochs is a major pain in the ass. I have a 2.6 kernel and (I misremember some details but) I tried to use the method recommended for 2.6, had all appropriate support compiled in as far as I could tell, and it still wouldn't work, but the method recommended for 2.4 worked fine. Bochs may fit some needs, but anyone willing to look at virtual pc is surely not someone who will be using bochs.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
Both products can boot off raw hard disks. I even setup a new Gentoo system that way. VPC does however have a 137GB limit on raw disks which VMWare doesn't. Both products run quite slowly when installing an OS - they have to run in a maximum compatibility mode because of all the probing and other stuff OS installs do. Once the guest OS is installed they run faster.
Both products allow you to modify the virtual hardware (adding/removing ports, drives, images etc) after installation. Both products have undoable disks and various forms of networking (host only, share real NIC etc).
The last Connectix version of VPC had VNC access to your guests which was really neat. Microsoft removed that for VPC 2004 on "security" grounds. Technically that is true (VNC is an unecrypted protocol) but I suspect they would have removed it for marketing reasons anyway.
VPC does have a restriction that access to the host from the guest has to be done from kernel mode in the guest. That means for example that the Additions (VPC speak) / Tools (VMWare speak) have to be loaded into the OS in the guest. This prevents random user space programs in the guest from getting host access. I don't know if VMWare does something similar or not. It is however something to consider if untrusted software will be running in your guest.
The 2.6 kernel used in some distros doesn't work on VPC 2004 due to some self modifying code allegedly used in conjunction with the X server. Of course the VPC folks claim it is a Linux problem and the Linux folks say it is a VPC problem. Just remember that Linux is not a supported guest for VPC even though it usually works and MS haven't done anything (yet) to prevent it.
I have never had a response ever to a support issue raised with VMWare. I have had way more compatibility issues with VMWare. For example I have a bootcd that works on every real machine (I have tried over 10) and in VPC but fails in VMWare. With VPC I haven't had to raise support issues since it just works. There is a Microsoft newsgroup for VPC that works well.
Fundamentally both products work well. VPC is simpler and cheaper and does what it does well. VMWare is larger and more complicated and has lots more knobs for fine tuning and is also available for a Linux host.
We can thank MS for buying VPC as it resulted in VMWare dropping their price by almost 40%.
The review's introduction says that the Mac version is an emulator but the PC version is simply a VM like VMWare.
Microsoft's VirtualPC site calls the PC version "a powerful software virtualization solution" (not that these sorts of blurbs are noted for their technical accuracy, but take it for what it's worth).