[发明专利]一种系统预引导阶段硬件辅助CPU虚拟化环境建立的方法无效
申请号: | 201110355883.4 | 申请日: | 2011-11-10 |
公开(公告)号: | CN102508682A | 公开(公告)日: | 2012-06-20 |
发明(设计)人: | 彭双和 | 申请(专利权)人: | 北京交通大学 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京正理专利代理有限公司 11257 | 代理人: | 张雪梅 |
地址: | 100044*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 系统 引导 阶段 硬件 辅助 cpu 虚拟 环境 建立 方法 | ||
技术领域
本发明涉及建立预引导阶段虚拟环境,特别是涉及一种系统预引导阶段硬件辅助CPU虚拟化环境建立的方法。
背景技术
目前主流的虚拟化技术主要有全虚拟化技术(Full Virtualization),泛虚拟化技术(Para Virtualization)和硬件辅助虚拟化技术(Hardware Assisted Virtualization)。前两种在没有硬件扩展情况下就可以支持多操作系统的运行,但是性能比较差,特别是对于I/O访问频繁的应用;硬件辅助虚拟化技术属于一种虚拟化硬件加速技术,它的主要目标有两个:一是减少虚拟化系统开发设计代价,如简化VMM(Virtual Machine Monitor)软件设计,提供对客户操作系统,驱动程序的更好兼容性等方面;另外,就是减小由于系统虚拟化所带来的额外开销问题。
采用硬件辅助的虚拟化技术,可以使得客户操作系统无需修改就可以直接在虚拟机监视器VMM软件上执行,同时也不需要采用类似二进制翻译等技术,因而虚拟化开销较小。目前主流的芯片提供商都在自己最新的CPU上增加了硬件辅助虚拟化技术,从硬件的角度对虚拟化进行扩展支持,如Intel的VT,AMD的AMD-V,IBM的Power5,6以及SUN的OpenSparc T2都包含硬件辅助虚拟化技术。尽管技术的名称存在不同,但是其基本原理,实现方法基本一致。本发明是以Intel的CPU虚拟化技术为例进行的。下面对Intel的CPU虚拟化技术进行简单介绍。
如图1所示,过去只有大型主机系统才支持虚拟化技术,通用处理器是不支持虚拟化的。为使得通用的处理器也支持虚拟化,Intel的虚拟化技术在其IA-32体系的CPU指令集中增加了对虚拟支持的指令VMX(Virtual Machine Extensions:虚拟机扩充)。由于这些指令是在硬件层实现的,使得虚拟控制过程变得更快更简单。
在这种虚拟环境下,增加了两种新的操作模式:VMX根操作模式以及VMX非根操作模式。控制虚拟环境的软件VMM运行在根操作模式下,用于处理特殊指令;而VM(Virtual Machine:虚拟机)则运行在非根操作模式。当在非根操作模式VM执行到特殊指令的时候,系统会切换到运行于根操作模式的VMM,让VMM来处理这个特殊指令。
除此之外,Intel VT VMX操作新定义了VMCS(Virtual Machine Control Structure:虚拟机控制结构),如图2所示。该结构中包含了处理器重要信息的区域,一个是主机状态区域,另一个是客户机状态区域。VMM对硬件虚拟CPU的管理通过VMCS实现。VMX非根操作模式与根模式之间的状态变迁由VMCS管理。当虚拟机进入时(处理器控制从VMX根状态进入VMX非根状态),处理器状态被保存在VMCS的主机状态区域中,同时客户机状态从VMCS中装入。相反,当虚拟机退出时(从VMX非根状态进入VMX根状态),客户机状态被保存在VMCS的客户机状态区域中,而主机状态则从VMCS的主机状态区域装入。
某些特定的指令、事件或状态会导致虚拟机退出到VMM,但客户机软件本身并不知道自己是否运行在虚拟机上。
发明内容
本发明在于避免以上现有技术的不足提供一种系统预引导阶段硬件辅助CPU虚拟化环境建立的方法。
本发明的技术方案如下:
一种系统预引导阶段硬件辅助CPU虚拟环境建立的方法,该方法包括以下步骤:
1)通过操作系统下的安装单元对移动U盘进行初始化,设置相关的引导扇区信息,建立硬件辅助CPU虚拟环境;
2)操作系统对BIOS进行相关设置,将移动U盘设置为BIOS系统启动的第一引导设备;
3)操作系统加电启动,BIOS完成系统自检后将移动U盘的引导扇区调入内存执行,由移动U盘的引导扇区调入所述硬件辅助CPU虚拟环境,建立操作系统启动前预引导阶段的硬件辅助CPU虚拟环境。
进一步,所述的对移动U盘进行初始化的具体做法为:将引导扇区代码放在移动U盘的第一扇区位置,将建立硬件辅助CPU虚拟环境的相关信息代码,且将此相关信息代码放在移动U盘的第二扇区及其后续位置。
进一步,所述的建立硬件辅助CPU虚拟环境的相关信息代码包括虚拟机监视器VMM与虚拟机VM之间的控制权的转移。
进一步,所述的VM到VMM控制权的转移包括如下步骤:
1)CPU执行VM中正常的指令,直至最后执行HLT指令的前一条指令;
2)VM代码中的HLT指令,产生一个通用保护错误处理的中断服务事件;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京交通大学,未经北京交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110355883.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:包含两个电力系统的离岸结构及其供电方法
- 下一篇:一种新型安全节能插座