I would like to set-up a PC to run ubuntu most of the time, but also need to run XP for specific applications and testing. In the past I would have simply set up a dual boot machine and then restart and boot into windows XP as needed.
However since the machine has multiple cores and significant memory, I think I can use Virtual Box, Xen, or VMWare hypervisors. I am thinking of making Ubuntu the "host" VM and having XP as a guest VM. This would be especially nice for testing/debug/development since it is possible to run applications in both OS's simultaneously. I've never setup a virtual machine before and think that by asking the questions below I can avoid some trial-and-error.
Basically, I need to decide if a dual boot or VM setup is more appropriate for what I want to do.
Here's my questions:
I do not always need to have XP running. Do the hypervisors allow me to shut the guest VM down so that the host VM can then immediately use all memory and processor resources? When I then bring up the guest VM, is it easy to provision how much memory and other resources are used by it? Ideally, I'd like to pre-configure this in advance and then toggle the guest VM off/on without thinking about it.
Is it possible or advisable to have the host OS be 64bit and the guest OS be 32bit? Alternatively, if both VM's are 32 bit and I have 8G of RAM, can the hypervisor provision each VM with 4G of RAM when they are running simultaneously?
Which hypervisors are best for set-ups such as I described?