1. 启动过程
xen的启动过程,与x86系统一样,首先要进入保护模式,然后安装中断处理程序。
xen的中断处理程序可以分为几种,有的是直接分发给正在运行的操作系统,有的是分发给安装了硬件驱动的Dom0。以时钟中断为例,既要分发给xen本身,用来调度各个Guest系统的运行,又要分发到运行的Guest中,支持Guest内部的程序调度。
BIOS的支持
x86系统在启动过程中需要读取BIOS提供的信息,同时也能使用BIOS提供的调用来对硬件进行直接操作。
这种机制,xen不会提供给Guest,因为它破坏了“Isolation”的原则。
因此,xen通过一种start info page来向Guest提供启动所需的有关BIOS的信息。
类似的机制还有:
1). shared info page: 用来在Guest运行的时候可以动态地更新共享的数据。
2). XenStore: 用来确定哪些虚拟的设备是可以使用的。
xen使用的是虚拟设备,因此对于DomU的虚拟机来说,只需要实现一种需要的driver就好了。