I don't necessarily have any great insight as to the decision process of the maintainers of the section of the kernel that KVM resides within; however, I would say that it is relatively self-contained and can exist within the kernel without affecting oher areas of the kernel. In other words, you can run KVM in an otherwise unmodified kernel and using it is a run-time decision. Xen requires kernel modifications that are Xen-specific. This has been handled in the past by creating Xen versions of the kernel that are then run. However, that's less desireable, since you have to have a vanilla version of the kernel and and Xen-capable version.
This situation is further complicated by the fact that VMware has similar, though not identical, requirements. Therefore, there has been a concerted effort to come up with a method to allow these virtualization extensions to be included in a standard kernel and have them be run-time options and have that standard kernel be able to choose which virtualization solution is used at run-time. That effort, called libvirt, is progressing well, but I believe it will need to be in place before Xen is included in the kernel.
Dig Deeper on Citrix XenServer
Related Q&A from Joseph Foran
Site expert Bernard Golden answers a user question about working with Xen in Slackware 12. Continue Reading
Virtualization is having a positive impact on Windows based applications, but will it leave Linux behind? Bernard Golden weighs in with his thoughts ... Continue Reading
The XenServer family of products has hit the market and Bernard Golden tells us whether or not it will make an impact in this expert response. Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.