If your 64 bit system supports hardware virtualization, I'd use kvm / qemu-kvm. I've been using it now for a couple years it gotten pretty nice. The overhead is less than you'd get from vmware and likley virtualbox and I know you pass through usb port(s) and other devices to your guest(s); I used to have to do that to manually upgrade the software on a WIndow Mobile phone. Some distros probably provide a gui wrapper for setup (RedHat is now backing kvm and on the way to not supporting Xen so they likely have a gui), but the command line side of kvm isn't very difficult.<br>
<br>Vmware is probably the most externally-polished virtualization tool and virtualbox has worked well for me before when I used it to run Linux under osX, too.. The downside to either of those 2 is that in my experience they've been a lot more prone to breaking than kvm / qemu-kvm. Their modules need rebuilt after a kernel upgrade, for example. With kvm the drivers you need are in-kernel, so with an upgrade you just include them and there's no need to rebuild out-of-tree drivers and hope they still build. <br>
<br>Another thing you mentioned was booting the virutal os "live" at system boot. I know for sure that vmware and kvm can both let you install to raw block devices, so you could use a real partition with real fs rather than your OS living in a file. Virtualbox can likely do the same thing. It's just a matter of drivers being present on your guest OS to support both the real and emulated hardware.<br>
<br>