Xen
XenXen
Xen 虚拟机架构
虚拟机架构虚拟机架构
虚拟机架构
董耀祖
董耀祖董耀祖
董耀祖
[Abstract]
[Abstract][Abstract]
[Abstract]
Xen 是一个基于开源软件组织的
虚 拟 机 监 控 器 ( 即 Virtual
Machine Monitor 简称 VMM),可
以允许在单一的物理机器上同时
运行多个操作系统实例。
虚拟
虚拟虚拟
虚拟化
化化
化技术概述
技术概述技术概述
技术概述
虚拟计算机的概念最早由 IBM 公司在
上 世 纪 六 七 十 年 代 提 出 , 并 将 其 运 用 于
VM/370 系统中以共享昂贵的大型机系统
(Main Frame)。之后的发展起起伏伏,一
度由于分时操作系统的出现而处于停滞状
态。上世纪九十年代随着 JAVA 虚拟机的推
出,尤其是之后 Vmware 公司 Vmware ESX
server 和 Vmware workstation 虚拟机的推出,
使对虚拟机技术的研究再次成为处理器设计
人员、软件设计人员、服务器设计人员和网
络安全设计人员的热门研究课题。
如图 1 所示,虚拟化技术通过在现有平
台(机器)上添加一层薄的虚拟机监控程序
(Virtual Machine Monitor,简称 VMM)软
件而实现对系统的虚拟化,如虚拟处理器,
虚拟内存管理器(MMU)和虚拟 I/O 系统等。
虚 拟 机 监 控 程 序 又 被 称 之 为 监 管 程 序
(Hypervisor)。从应用程序的角度看,程序
运行在虚拟机上同运行在其对应的实体计算
机上一样。虚拟机技术使得一台物理计算机
可以生成多个不同的虚拟机分别运行多个不
同或相同的操作系统。虚拟机技术通过将不
同的应用运行在不同的虚拟机上,可以避免
不同应用程序之间的互相干扰,例如一个应
用的崩溃不会影响到其它的应用等。这种由
虚拟机技术实现的各个应用之间的完全隔离
在服务器领域具有尤其重要的意义,同时虚
拟机技术也可以使得企业,高校或研究所可
以在不必购置大量物理计算机的情况下实现
大规模的计算机网络以从事生产及研究,例
如 网 络 及 网 络 应 用 研 究 , 操 作 系 统 内 核
(Kernel)软件的开发和用户操作系统的开
发等。
图 1: 虚拟化软件(VMM)使一个物理平台同
时运行多个客户机操作系统
VMM 抽 象 的 虚 拟 机 的 指 令 集
(Instruction Set Architecture 简称 ISA)可以
等同于它运行的物理机器,也可以作些微修
改。当虚拟的指令集与物理的指令集相同时,
该虚拟机可以运行没有任何修改的操作系
统;而当两者不完全相同时,客户机的操作
系统就必须在源代码级或二进制代码级作相
应修改。根据是否需要修改客户机操作系统
的源代码,虚拟化技术又可以分为(1)泛虚
拟化(Paravirtualization)和(2)完全虚拟
化(Full-virtualization)。完全虚拟化由于不
需要修改客户机操作系统,因此具有很好的
兼容性和同时支持异种操作系统或不同版本
...
Virtual Machine Monitor (VMM)
VM
n
VM
0
Guest OS
VM
1
Platform HW
I/O DevicesProcessorsMemory
Apps
Guest OS
Apps
Guest OS
Apps
...
Virtual Machine Monitor (VMM)
VM
n
VM
0
Guest OS
VM
1
Platform HW
I/O DevicesProcessorsMemory
Apps
Guest OS
Apps
Guest OS
Apps