发明名称 一种具备单一系统映像的服务器机群系统
摘要 本发明公开了一种具备单一系统映像的服务器机群系统,所述系统包括硬件层、分布式虚拟机监视器层和操作系统层;所述硬件层包括多个结点,所述结点的CPU支持硬件虚拟化,各结点通过高速网络连接;所述分布式虚拟机监视器层为在每个结点的硬件之上部署一个虚拟机监视器,各结点上的虚拟机监视器之间通过底层通信软件、经由高速网络进行通信;操作系统层为支持cc-NUMA的各类商用操作系统;现行的各类面向cc-NUMA架构的并行软件可以不经修改地运行于所述系统之上。它基于对硬件资源的虚拟化,在操作系统之下实现了服务器机群系统的单一系统映像。具有透明性好、性能较高、应用面广和实现难度适中等优势。
申请公布号 CN101271401B 申请公布日期 2010.04.14
申请号 CN200810094232.2 申请日期 2008.04.23
申请人 北京航空航天大学 发明人 彭近兵;祝明发;肖利民;龙翔;王箫
分类号 G06F9/455(2006.01)I;G06F9/46(2006.01)I 主分类号 G06F9/455(2006.01)I
代理机构 北京市合德专利事务所 11244 代理人 王文会
主权项 一种具备单一系统映像的服务器机群系统,其特征在于:所述机群系统包括硬件层、分布式虚拟机监视器层和操作系统层;所述硬件层包括多个结点,所述结点的CPU支持硬件虚拟化,各结点通过高速网络连接;所述分布式虚拟机监视器层为在每个结点的硬件之上部署一个虚拟机监视器,各结点上的虚拟机监视器之间通过底层通信软件、经由高速网络进行通信;操作系统层为支持高速缓存一致性非均匀存储访问架构的各类商用操作系统;现行的各类面向高速缓存一致性非均匀存储访问的并行软件可以不经修改地运行于所述机群系统之上;所述虚拟机监视器由初始化模块、扩展的基本输入输出系统模块、指令集系统虚拟化模块、I/O虚拟化模块、中断虚拟化模块、内存管理单元虚拟化模块、分布式共享存储模块和通信模块构成:所述初始化模块在各个结点上引导并运行分布式虚拟机监视器;包括加载分布式虚拟机监视器映像;初始化基本的软件运行环境;初始化分布式虚拟机监视器的各个模块所必需的数据结构;为分布式虚拟机监视器各个模块构建必要的上下文环境;加载分布式虚拟机监视器的各个功能模块;为引导客户操作系统做准备;所述指令集系统虚拟化模块是虚拟机监视器的入口点和出口点,所述指令集系统虚拟化模块可以调用通信模块以外的所有模块,也会被这些模块调用;所述通信模块是各结点虚拟机监视器间协作的基础,该模块调用指令集系统虚拟化模块以外的所有模块,也会被这些模块调用;所述通信模块将其他模块的通信请求送达目的结点,同时处理其它结点发来的通信请求,根据不同的请求调用相应模块进行服务;所述扩展的基本输入输出系统模块仅在初始化分布式虚拟机监视器和启动操作系统时起作用,指令集系统虚拟化模块捕获操作系统引导时的中断调用,将信息传递给扩展的基本输入输出系统模块,扩展的基本输入输出系统模块根据请求信息的类型,以传统基本输入输出系统兼容的方式将整个系统的虚拟资源信息反馈给操作系统,完成操作系统启动时基本输入输出系统调用的功能,扩展的基本输入输出系统模块通过中断虚拟化模块、I/O虚拟化模块、通信模块完成操作系统引导前基本输入输出系统所做工作,感知并生成整个系统的资源信息;所述I/O虚拟化模块接受指令集系统虚拟化模块的请求,若判别为远程I/O操作,则调用通信模块,向远程结点发出I/O操作请求,接收远程操作结果,更新客户系统状态,完成此次I/O操作;当I/O虚拟化模块接收到远程I/O请求后,对本地I/O设备进行操作,将结果经由通信系统返回至请求结点;指令集系统虚拟化模块调用中断虚拟化模块模拟操作系统对虚拟中断控制器操作的结果;将外部中断向量转化为操作系统可识别的虚拟中断向量,并向操作系统注入一个虚拟中断;所述内存管理单元虚拟化模块只被指令集系统虚拟化模块调用,当指令集系统虚拟化模块捕获客户指令流中与内存管理单元相关操作,或者与内存管理单元有关异常时,调用内存管理单元虚拟化模块进行处理;当内存管理单元虚拟化模块发现客户所请求的页面不在本结点时,调用分布式共享存储模块进行页面迁移,被内存管理单元虚拟化模块调用时,分布式共享存储模块通过通信系统向远程结点请求相应的页面;被通信模块调用时,分布式共享存储模块对请求进行服务,并通过通信系统发送结果。
地址 100083 北京市海淀区学院路37号