There's a number of projects that produce complete images from your app, bootable on xen as a machine. For example Erlang on Xen, OpenMirage, HaLVM, and others.
Why is Xen the default hypervisor for them? Does it provide some interface that makes these projects easier (as opposed to KVM, VmWare, etc.), or is it just the project developers' choice?