基于UEFI运行时服务的Xen虚拟机架构及其实现方法技术

技术编号:7625660 阅读:632 留言:0更新日期:2012-08-01 03:23
一种基于UEFI运行时服务的Xen虚拟机架构及其实现方法。包括硬件平台、BIOS系统、虚拟机监视器和操作系统,其中UEFI?BIOS包括UEFI启动时服务和UEFI运行时服务,特权域作为UEFI运行时服务的一部分,在操作系统运行阶段与设备前端驱动通信;虚拟机监视器位于系统硬件平台与虚拟计算域操作系统软件之间,负责监控下层硬件,操作系统包括内核层的设备前端驱动和用户层的功能测试程序。Xen常规的块设备驱动程序分成前端驱动和后端驱动两部分。由于特权域不存储在硬盘中,而是作为UEFI运行时服务存储在Flash芯片中,解决了目前Xen虚拟机架构存在的安全防护级别不高的问题。同时实现了Xen特权域精简化。

【技术实现步骤摘要】

本专利技术涉及一种新的Xen虚拟机架构,特别是涉及一种基于新一代UEFI架构及其实现方法。
技术介绍
Xen虚拟机架构为一个事实上的开源虚拟化解决方案标准,它具有开源特性、接近于原生系统的性能、永不停机的动态移植功能,以及对原生操作系统的支持等特点。“统一可扩展固件接口(UEFI) ”是一个描述平台固件与操作系统及其它应用软件之间接口的新一代BIOS技术标准。UEFI主要由一系列包含平台相关信息的系统表和供操作系统引导程序、 操作系统调用的启动服务和运行时服务构成。这些部件联合起来为一个操作系统的启动与预启动程序的执行提供了一个标准环境。当操作系统启动后,启动服务将全部被卸载,而运行时服务仍滞留在系统内存中,以供上层操作系统调用。在最新的Xen虚拟机架构中,其采用的是分离设备驱动模式。该模式在每个用户域中建立前端设备驱动,在特权域中建立后端设备驱动。所有的用户域操作系统像使用普通设备一样向前端设备发送请求,而前端设备通过I/o请求描述符和设备通道将这些请求以及用户域的身份信息发送到处于特权域中的后端设备。后端驱动会检查该请求的有效性,进行虚拟设备地址到物理设备地址的变换。但这种架构存在问题是一旦特权域被攻破, 后端驱动易被破坏或篡改,将导致所有的虚拟域都将失去保护机制,无法防止重要数据文件和机密信息的泄漏、窃取。另外,在特权域中实现与前端驱动通信的后端设备驱动会导致特权域系统复杂化,也不符合Xen特权域精简化的设计初衷。
技术实现思路
本专利技术的目的在于提供一种新的Xen虚拟机架构及其实现方法,解决目前Xen虚拟机架构安全防护级别不高,特权域系统不够安全的问题。其中,特权域不存储在硬盘中, 而是作为UEFI运行时服务存储在Flash芯片中。本专利技术一种基于UEFI运行时服务的Xen虚拟机架构,是采用以下技术手段实现的一种基于UEFI运行时服务的Xen虚拟机架构,包括硬件平台、BIOS系统、虚拟机监视器(Xen hypervisor)和操作系统,其中UEFI BIOS包括UEFI启动时服务和UEFI运行时服务,特权域作为UEFI运行时服务的一部分,它包括设备后端驱动,在操作系统运行阶段与设备前端驱动通信;虚拟机监视器位于系统硬件平台与虚拟计算域操作系统软件之间, 负责监控下层硬件,并将硬件抽象成可管理调度的实体供上层计算域使用,还为上层计算域提供有效的隔离机制;操作系统包括内核层的设备前端驱动和用户层的功能测试程序。Xen常规的块设备驱动程序分成前端驱动和后端驱动两部分。当前端设备驱动程序在接到来自虚拟域操作系统的读写请求后可以通过事件通道和共享内存向后端设备提出服务请求。后端是运行在特权域中的UEFI设备驱动程序,负责接收前端转发的I/O请求,并且通过真正的设备驱动访问物理设备,或使用软件形式处理,完成I/O请求。本专利技术一种基于UEFI运行时服务的Xen虚拟机架构的实现方法是采用以下技术手段实现的。运行在用户域中的功能测试程序发送I/O读写请求给设备前端驱动;设备前端驱动在收到I/O读写请求后,将I/O读写请求发送给Xen Hypervisor ;Xen Hypervisor通过事件通道和共享内存将I/O读写请求发送给设备后端驱动;运行在特权域中的设备后端驱动在收到I/O读写请求后,通过其中的原生设备驱动将I/O读写请求发送给硬件设备;硬件设备进行处理后,将数据返回给设备后端驱动;设备后端驱动将获取到的数据发送给Xen Hypervisor ;Xen Hypervisor通过事件通道和共享内存将获取到的数据返回给设备前端驱动;设备前端驱动将获取到的数据返回给功能测试程序。本专利技术,与现有技术相比, 具有以下明显的优势和有益效果。本专利技术,由于特权域不存储在硬盘中,而是作为UEFI运行时服务存储在Flash芯片中,解决了目前Xen虚拟机架构存在的安全防护级别不高的问题。同时实现了 Xen特权域精简化。附图说明图I为本专利技术Xen虚拟机架构的结构示意图;图2为本专利技术Xen虚拟机架构实现方法的示意图。具体实施例方式以下结合说明书附图,对本专利技术的具体实施例加以说明。请参阅图I所示,为本专利技术Xen虚拟机架构的结构示意图。从图中可以看出,Xen 虚拟机架构由操作系统、虚拟机监视器、BIOS系统和硬件平台组成。其中,功能测试程序模块,位于用户域(操作系统)层,属于用户态程序,用于对硬件设备进行各项测试。设备前端驱动模块,位于用户域(操作系统)层,属于内核态程序,用于与设备后端驱动通信,与传统原生设备驱动不同,其不能直接访问硬件设备。Xen Hypervisor :位于虚拟层,用于为用户域与特权域间的通信提供事件通道和共孚内存等机制。设备后端驱动位于特权域(UEFI BIOS)层,属于UEFI运行时服务程序,用于与设备前端驱动通信以及与硬件设备通信。它提供平台访问硬件设备的唯一接口,其在包括传统原生设备驱动部分的同时,还负责与设备前端驱动进行通信。硬件设备位于硬件平台层,如PCI网卡、SAS卡等硬件设备。请参阅图2所示,本专利技术Xen虚拟机架构实现方法的示意图。具体步骤如图所述。运行在用户域中的功能测试程序发送1/0读写请求给设备前端驱动。设备前端驱动在收到I/O读写请求后,将I/O读写请求发送给Xen Hypervisor。Xen Hypervisor通过事件通道和共享内存将I/O读写请求发送给设备后端驱动。运行在特权域中的设备后端驱动在收到I/O读写请求后,通过其中的原生设备驱动将I/O读写请求发送给硬件设备。硬件设备进行处理后,将数据返回给设备后端驱动。设备后端驱动将获取到的数据发送给Xen Hypervisor。Xen Hypervisor通过事件通道和共享内存将获取到的数据返回给设备前端驱动。设备前端驱动将获取到的数据返回给功能测试程序。最后应说明的是以上实施例仅用以说明本专利技术而并非限制本专利技术所描述的技术方案;因此,尽管本说明书参照上述的各个实施例对本专利技术已进行了详细的说明,但是,本领域的普通技术人员应当理解,仍然可以对本专利技术进行修改或等同替换;而一切不脱离专利技术的精神和范围的技术方案及其改进,其均应涵盖在本专利技术的权利要求范围当中。权利要求1.一种基于UEFI运行时服务的Xen虚拟机架构,包括硬件平台、BIOS系统、虚拟机监视器和操作系统,其特征在于UEFI BIOS包括UEFI启动时服务和UEFI运行时服务,特权域作为UEFI运行时服务的一部分,它包括设备后端驱动,在操作系统运行阶段与设备前端驱动通信;虚拟机监视器位于系统硬件平台与虚拟计算域操作系统软件之间,负责监控下层硬件,并将硬件抽象成可管理调度的实体供上层计算域使用,还为上层计算域提供有效的隔离机制;操作系统包括内核层的设备前端驱动和用户层的功能测试程序;Xen常规的块设备驱动程序分成前端驱动和后端驱动两部分,当前端设备驱动程序在接到来自虚拟域操作系统的读写请求后通过事件通道和共享内存向后端设备提出服务请求;后端是运行在特权域中的UEFI设备驱动程序,负责接收和完成前端转发的I/O请求。2.一种基于UEFI运行时服务的Xen虚拟机架构的实现方法,其特征在于包括以下步骤2. I、运行在用户域中的功能测试程序发送I/O读写请求给设备前端驱动;2. 2、设备前本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:曾颖明王斌王宏涛王晓程姚金利陈志浩马书磊赵政耀李红
申请(专利权)人:中国航天科工集团第二研究院七〇六所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术