I don't know much about virtualization, but could anyone explain how sites such as [1] and [2] are able to virtualize OpenBSD? Do you think they develop the Xen support internally?
Short answer: There's two types of virtualization.
With full virtualization, you can run unmodified operating systems (in theory, at least). VMWare is an example of a fully virtualized system. Recently Intel and AMD added features to their CPUs which make this much easier.
With para virtualization, the guest operating system is aware of the hypervisor and cooperates with it -- for example, rather than modifying page tables directly, it sends a message to the hypervisor saying "please map this page for me".
(There's also a hybrid 75%-virtualized model, where the system is fully virtualized except that some devices are exposed via hypervisor calls -- this is seen most commonly as Xen "HVM with PV drivers".)
With full virtualization, you can run unmodified operating systems (in theory, at least). VMWare is an example of a fully virtualized system. Recently Intel and AMD added features to their CPUs which make this much easier.
With para virtualization, the guest operating system is aware of the hypervisor and cooperates with it -- for example, rather than modifying page tables directly, it sends a message to the hypervisor saying "please map this page for me".
(There's also a hybrid 75%-virtualized model, where the system is fully virtualized except that some devices are exposed via hypervisor calls -- this is seen most commonly as Xen "HVM with PV drivers".)