[libvirt] About virtualization, libvirt and xen...

Hello, I have understand that : ---------------------------- guest ---------------------------- driver_device0_guest ---------------------------- hypervisor ---------------------------- driver_device0_hypervisor ---------------------------- device0 ---------------------------- in order to access to a device, a guest use driver_device0_guest The driver_device0_guest is modified to ask the hypervisor instead of the device0 directly. Then the hypervisor uses the driver_device0_hypervisor in order to ask the device0. It's my understant, maybe it's false. I have few questions : 1 - what is the difference between libvirt and virtio. 2 - why developpers for xen, kvm... must develop drivers each time there are new devices ? Because the driver must ask the hypervisor instead of device directly. 3 - The devices presented to the guest are real or emulated ? (for xen and/or kvm) if devices are real, for example, i can use my graphic card with a virtual machine ?? 4 - Can you tell me why kvm is best or xen is best in enterprise. In my understand, in the future, kvm is in good position because the developpment is integrated in the kernel. Also, i feel xen progress because firms like citrix contribute but it's seems there is no big update since few years. My vision is xen is best for production environnement because it takes advantages of minimal hypervisor code while kvm must be install with the kernel. Also, it seems, performance will be better in kvm with virtio. Can we use virtio with xen ? _________________________________________________________________ Vous voulez savoir ce que vous pouvez faire avec le nouveau Windows Live ? Lancez-vous ! http://www.microsoft.com/windows/windowslive/default.aspx

On Tue, Feb 24, 2009 at 10:47:05AM +0000, Patrick Archibal wrote:
1 - what is the difference between libvirt and virtio.
libvirt provides a API for the host OS, allowing management of virtual machines, storage, networking, host devices, etc. virtio is basically providing paravirtualized device drivers between guest and host, and has several aspects - A generic infrastructure layer in guest kernel for writing device drivers that talk to the host - A generic host<->guest data transport running as a PCI device - A generic host<->guest data transport using a ring buffer - Guest implementations for paravirt network, disk & memory balloon drivers - QEMU host backends for network, disk & memory balloon drivers
2 - why developpers for xen, kvm... must develop drivers each time there are new devices ?
The virtio infrastructure is intended to provide generic drivers that can be used on any hypervisor. Currently supports KVM and LGuest. Xen has its own device drivers because they were developed years ago outside the context of the Linux kernel community just for Xen's needs.
3 - The devices presented to the guest are real or emulated ? (for xen and/or kvm) if devices are real, for example, i can use my graphic card with a virtual machine ??
By default all devices presented to the guest either emulated or paravirtualized. It is possible to pass physical host devices directly to the guest, eg PCI or USB device pass-through, but there are quite a few restrictions on how this works so paravirtualized devices are generall preferred.
4 - Can you tell me why kvm is best or xen is best in enterprise.
This isn't really the right list to get into a discussion about which is best. Libvirt is committed to supporting all virtualization technologies that we can.
Also, it seems, performance will be better in kvm with virtio. Can we use virtio with xen ?
VirtIO is currently only supported for KVM and LGuest. It could in theory be implemented for Xen too, but its not clear if it is worth the effort. Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
participants (2)
-
Daniel P. Berrange
-
Patrick Archibal