These days, I'm much more technically adept with FOSS virtualization technologies and made the switch to using Linux KVM on my newer machines which support Intel's VT and AMD's AMD-V acceleration. I don't have any Phoronix style detailed comparisons but KVM feels faster and lighter than Virtualbox or VMware.
Quick SetupInstall the qemu-kvm package
sudo apt-get install qemu-kvm
Create a directory to hold your virtual machines.
mkdir -p ~/VM/WinXP
Move to that directory and create a disk image file.
cd ~/VM/WinXP qemu-img create -f raw windows_xp.img 12G
-f raw = creates raw IO driver format image (You could also use the qcow2 mode. It has more features but doesn't perform as fast as raw)
windows_xp.img = name of the image file
12G = The virtual disk size.
Now create a bash script using your favourite text editor. I like vim but you could just as easily use gedit from GNOME.
Here's how my script looks:
#!/bin/bash # # Description: Launches Windows XP QEMU64 # # Verion: 1 # Author: Clayton Kramer clayton.kramer @ gmail.com # Modified: Fri 23 Apr 2010 11:43:35 AM EDT # # Ubuntu Karmic tweek - Prepare audio to use Pulse driver instead of ALSA export QEMU_AUDIO_DRV=pa # Launch Windows XP KVM kvm \ -name "Windows XP Guest" \ -m 1024 \ -smp 1 \ -localtime \ -drive file=~/VM/WinXP/windows_xp.img,if=virtio,index=0,boot=on,cache=writeback \ -drive file=~/ISO/windows_xp_sp2.iso,if=ide,media=cdrom,index=2 \ -fda ~/ISO/viostor-31-03-2010-floppy.img \ -net nic,model=virtio \ -net user \ -soundhw ac97 \ -usb \ -usbdevice tablet
By default Ubuntu 9.10's qemu-kvm will use ALSA drivers which can lead to some choppy sound. You can change this behavior by setting the QEMU_AUDIO_DRV environmental variable to pa before launching the KVM.
I am using the VirtIO drivers in the script above. They improve the IO performance for Windows guests. Haydn Solomon provides some detailed instructions on setting them up in his KVM blog. I've decided to live a little dangerous and enabled the writeback option for the block driver.
After the Windows installation is complete you can ommit the virtual floppy disk device line.
You may also want to take note that my script also configures the paravirtualized network device. You'll need to get the latest driver for that from:
If you wanted wanted to get a Windows XP install going without using the VirtIO drivers you can use this compatibility script. It uses IDE for the IO controller bus and Intel e1000 driver for the NIC.
# Launch Windows XP KVM (compatibility) kvm \ -name "Windows XP Guest" \ -m 1024 \ -smp 1 \ -localtime \ -drive file=~/VM/WinXP/windows_xp.img,if=ide,index=0,boot=on \ -drive file=~/ISO/windows_xp_sp2.iso,if=ide,media=cdrom,index=2 \ -net nic,model=e1000 \ -net user \ -soundhw ac97 \ -usb \ -usbdevice tablet