Windows guests can use drivers to work directly with the virtual-hardware devices that are presented to the guest. And since windows is acpi, etc. aware, with the right settings it works almost as if its paravirtualized. When installing, for me its easiest to d/l and store the .iso file for whatever OS I have running, and boot directly from the iso to install. There's no need to mount the iso separately - xen and kvm can work with the file. And guests should be able to use your CD drive directly as well. As for centos, I always use the network install iso, (which is tiny) and use that to install from the closest http mirror.