
On Mon, Oct 16, 2017 at 08:56:28PM -0400, Jamon Camisso via talk wrote:
ESXi and Xen are 'type 1' hypervisors, in that they are their own operating system. Guests sit directly on top. VMs need to be patched to make use of the hypervisor's ability to use virtualization related CPU instructions.
KVM, VirtualBox, and Hyper-V (I think) are considered type 2. They run a normal OS, and then provide an emulation layer for guest VMs. You can run normal processes on the host OS, because it is just running an extra set of processes to provide virtualization to guests. The guests don't need to be modified at all, which is why it is easy to run any OS on a type 2 hypervisor. Most guests run fine unmodifed on ESXi so that really has nothing to do with it. And hyper-v requires guests that explicitly support it if you want to run a gen2 hyper-v rather than the original gen1.
So type 1 or 2 has nothing to do with the guest being modified or not.
xen I believe requires guests that are xen compatible, while kvm does not require it (and uses qemu to emulate legacy hardware as needed), but kvm can perform better (as can most hypervisors) if the guest is helping and vm aware. Xen does not require the guest to be VM aware and uses the more or less
On 10/17/2017 10:13 AM, Lennart Sorensen via talk wrote: the same code as KVM to do the legacy hardware support. Someone with an OpenStack integration company told me that Hyper-V is actually Xen re-branded but I have not found anything to prove or disprove that. With Xen being OpenSource it would be easy for someone to create a clone that is ClosedSource. Xen uses a virtualized operating system to manage things like disks, networks and legacy hardware emulation and this Dom0 needs to be aware that it is running on Xen. Other hosted VMs can get better performance if they use the para-virtualization features of Xen but it is not a requirement. Its just my opinion but I believe: VMware and VirtualBox tend to have better hardware emulation with things like windows clients because they have business reason to support windows and put programmer resources into doing that. Where KVM,Qemu,Xen(as opposed to Citrix xenserver) are supported mostly by people who will "clean toilets but refuse to do windows" so non-linux friendly hardware tends to get forgotten about.
So virtualbox, virtualpc and vmware workstation are type 2. kvm is in fact a type 1 (it runs in the OS kernel and uses hardware assistance to implement the virtualization. Being able to run other apps on the host has nothing to do with it). At least IBM says kvm is a type 1 hypervisor and they have been doing virtualization probably longer than anyone else. Hyper-v is also a type 1 hypervisor. The distinction isn't really that clear in a lot of cases these days. Certainly if it is a dedicated hypervisor OS, like xenserver or esxi, it is obviously type 1 and if it runs purely as an application like vmware workstation, virtualpc and virtualbox, then it is clearly type 2. If it runs built into an otherwise general purpose OS like hyper-v and kvm, well that it becomes less obvious, although apparently at least IBM (and some others) say that because of the direct hardware access, they are type 1, and essentially are just hypervisors with a lot of extra capabilities outside the virtualization part.
It is pretty fuzzy and I would argue that by the current definition they are all Type-1 and Type-2 at the same time. Possibly a better definition would be Type-1 is where the hypervisor is a microkernel that an OS sits on top of and everything else is Type-2. But that is just my take on it.
You'll also see the term VMM used interchangeably with hypervisor.
How the type of VMM relates to device drivers and licensing, I really can't say.
-- Alvin Starr || land: (905)513-7688 Netvel Inc. || Cell: (416)806-0133 alvin@netvel.net ||