There's been a lot of talk about bare-metal hypervisors in the virtualization realm. All academic arguments aside, the reality is that Linux + KVM is a bare-metal hypervisor. You can create a small Linux+KVM image, embed it in a computer like firmware, and add all the same end-to-end attestation that you can with any other software stack. The fact that KVM is a kernel module doesn't change much other than how someone might draw boxes in a powerpoint presentation.
Most of the proponents of Xen based virtualization talk ad nauseum about the attack surface size of a bare-metal hypervisor. Well, then what do you about the monumentally big efforts of creating drivers for all the varied hardware out there, especially on the endpoint? Why you take Linux and ram it into Xen as a control OS. What about the OS features which Linux has grown 17 years to do? Unfortunately, you need to train Xen to handle those -- things like the NUMA model, scheduling, memory management, power management, etc. These are no small feats on notebooks, for example, where hardware variability is high and power management features are critical.
And if you want to get a handle on how fast the feature velocity of Linux is to see what Xen is up against, check out Greg Kroah-Hartman's talk. Greg also comments on KVM, at 40:53 and 45:08.
Beyond the attack surface size argument, I've also heard that bare-metal is better from an IT management perspective because there's only a single image (presumably a Windows VM) to manage. Well first, all software has bugs/issues and needs to be updateable. So this really boils down to perception. If this update can be swept under the carpet, then IT is happy. If they have to manage the hypervisor image, then there are two images. Whether that hypervisor happens to be Xen, or Linux+KVM, or Martian in origin is irrelevant. Let's just call it like it is. What we're saying here is that IT doesn't want to manage a 2nd image.
I expect to see Linux+KVM wins in the server space, even as an embedded hypervisor much like VMware's ESXi. And ultimately in the endpoint virtualization arena.
Disclosure: no positions