To use all the VM at the same time on the same machine, you'll need big machines as in the other answers, let's say 2GB for windows testing and 512MB for linux testing + 3GB for windows + 1GB for linux you'll reach a 8GB machine and you'll need a rather fast cpu to run all 4 VM (not very very fast) at the same time.
I think you could work well with far smaller machines and my suggestion is to run on 2 different smaller machines, each one with 1 host and 1 guest, one for testing and one for developping as I think it is better to have 2 screens, because 4 machines on the same screen is not my dream (or even 5 if you plan to run 4 VM on a host as I think I understood)... If you have small / old machines already like P4 or Athlon, I think you could put 2 or 3 GB on it to run the test machines. I run XP guest (virtualbox) on ubuntu host on 1GB and 2GB Athlon and P4 machines very good - of course the 2GB P4 are better! but the 1GB Athlon are OK to work with Database app in xp and browser + Voip + openoffice + thunderbird in linux at the same time. So I think it would be sufficient for the testing machine host+vm with 1GB more RAM as you'll probably want to run windows 7 or Vista in it. For the developpment machine, it depends on what you'll use but a dual core with 4Gb should be nice to run both OS in my opinion.
Anyways, I would use always linux as host for multiple reasons:
- always faster in all my tests (with low and high RAM)
- windows depends more on RAM than linux and in VM it's easy to change the RAM allocated
- if you got problems, linux almost always boots and you can reach your disk at least with a terminal or a live-cd to fix it and is easier and faster to wipe-out, reinstall (without limited install/activation) and configure than windows so using windows in VM you "protect it" from having to reconfigure and reinstall (if you take a copy of the virtual HD freshly installed)
- if you need to test a different configuration, just copy the virtual HD and your windows is new again so you can configure it differently and test without reinstalling
- linux is a lot easier to manage / resize partitions and reads/mounts NTFS partitions without problems
- windows boot in VM is a lot faster than in real machine
- This one is personal but I use linux a lot more than windows so I don't need to run the VM all the time...
Keep your virtual disks on separate partition(s) (or better, disks if possible) to protect them and it will be easier to resize them if needed and if on separate disks, they will run faster.
If you want to run all 4 machines as VM, I would add 512MB on each machine and use linux as host.
Regarding VM type, I use virtualbox and I'm very satisfied with it (maybe because I know it better already) but VMWare machines are good too. I tested VMWare in the beginning and it looks more powerful but I think virtualbox is easier and faster.
Thank you all :) Very helpful thread. Now need to get to work with this – Cu7l4ss – 2010-07-29T06:44:28.540