A Xen system has multiple layers, the lowest and most privileged of
which is Xen itself.
Xen may host multiple guest operating systems, each of which is
executed within a secure virtual machine. In Xen terminology, a
domain. Domains are scheduled by Xen to make effective use of the
available physical CPUs. Each guest OS manages its own applications.
This management includes the responsibility of scheduling each
application within the time allotted to the VM by Xen.
The first domain, domain 0, is created automatically when the
system boots and has special management privileges. Domain 0 builds
other domains and manages their virtual devices. It also performs
administrative tasks such as suspending, resuming and migrating other
virtual machines.
Within domain 0, a process called xend runs to manage the system.
Xend is responsible for managing virtual machines and providing access
to their consoles. Commands are issued to xend over an HTTP interface,
via a command-line tool.