X86体系结构虚拟化主要技术简要分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
X86体系结构虚拟化主要技术简要分析
摘要:本文从x86体系结构及其发展入手,基于x86虚拟化技术难点讲解,结合专利申请技术梳理,对x86架构虚拟机技术中硬件虚拟机技术和操作系统虚拟机
技术发展作了详尽分析。可以了解:随着硬件微小化、资源节约化、物理机安全
化等方面需求的增加,硬件虚拟机技术和操作系统虚拟机技术均在减少资源占用、提高安全性、提升虚拟机管理等方面探索不断改进的方式方法。经过本文对x86
体系结构虚拟化技术的梳理,期望可以对该领域研究提供一定帮助。
关键词:x86;虚拟化;专利技术;分析
1.1 x86体系结构
通常,比较流行的两大处理器体系结构是MIPS公司的MIPS32/64指令集为
代表的精简指令集计算机RISC处理器体系结构,和以Intel公司的x86为代表的
复杂指令集计算机CISC处理器体系结构。RISC处理器可用指令较少,便于执行较简单的功能。
X86是使用x86指令集体系结构的所有微处理器家族系列的一类署名。x86
最初由 Intel 公司发明,由开始的 16 位结构发展到今天的 64 位结构。X86由8086
微处理器开始,8086在三年后为IBM PC所选用,之后x86便成为了个人计算机
的标准平台,成为了历来最成功的CPU架构。
1.2X86体系结构发展
8086是16位处理器,直到1985年32位的80386的开发,这个架构都维持
是16位。接着一系列的处理器表示了32位架构的细微改进,推出了数种的扩充,直到2003年AMD对于这个架构发展了64位的扩充,并命名为AMD64。后来
Intel也推出了与之兼容的处理器,并命名为Intel 64。两者一般被统称为x86-64
或x64,开创了x86的64位时代。
2.1 X86虚拟化技术难点
虽然X86架构在PC市场占据绝对的垄断地位,但是由于其在初始设计时,
并没有考虑到虚拟化需求,所以它对虚拟化的支持不够, X86的ISA有17条敏感指令(比如LGDT等)不属于特权指令。也就是说,当虚拟机执行到这些敏感指
令的时候,很有可能出现错误,将会影响到整个机器的稳定。同时还有许多X86
虚拟化所需要面对的问题未被研究。
2.2 X86虚拟化技术专利化概述
第一件x86架构下虚拟技术的先期研究性专利申请出现于1996年,随着服
务器虚拟技术逐渐被尝试引入到PC平台,x86虚拟技术在1998-2001年进入最早
应用者的探索阶段,因而专利申请数量一直持续低量状态;随着虚拟化逐渐项PC
服务器领域渗透,2002-2005年进入x86虚拟机中主流有限应用的开发和测试阶段,专利申请量相较于前一阶段有所上升,且保持上升态势;随着x86虚拟技术
的逐渐成熟,大量x86虚拟技术投入到生产系统以及企业标准化应用当中,例如
免费的商业级可用性的虚拟化产品移入到那些新进入虚拟化世界的用户中,伴随
着虚拟架构不断完善,从2006年开始,x86虚拟机及其相关改进专利申请大量涌现,并在2011增幅再度加大,持续保持增长状态,专利申请从2006年42件上
升到2014年的250件。2016年后,虽然存在其他架构下的虚拟技术研究兴起,
但x86架构虚拟机的专利申请量这一上升态势将会持续保持。
由于x86虚拟化技术研究起步于美国,且早期国内相关技术研究涉及的公司、组织较单一,同时x86虚拟技术本身存在着相当大的难度以及技术壁垒,2006年
以前中国的x86虚拟技术专利申请美国申请占主要地位,从2007年起,中国专
利申请占比逐渐提升。x86架构下的虚拟机相关专利主要集中在大公司,其中前
位所在国家均集中在美国,以威睿(VMWARE)公司、微软、IBM、英特尔为主导,均是较早的投入到x86架构下虚拟机研究,并一直保持着该领域的技术优势。此外,日本的企业也是该领域的主要申请人,而在国内申请人中,专利申请量排
名靠前的是华为、中国科学院、威盛电子、浪潮、联想等。x86虚拟技术的逐渐
进入标准化、规模化的应用领域,不仅使得内外国大公司重视该技术的相关专利
申请保护,同时国内的一些高校、研究所也开始组织研究该技术,并取得了一定
的研究结果。
目前,基础专利申请大多掌握在美国大公司的手中,使得我国该领域技术发
展处于不利状态;但同时,我国该领域技术发展又出现不同于外国发展的方向的
分支,x86架构虚拟机安全性研究分支,且该方向上我国专利研究占主导位置;
现阶段,由于中国专利申请的质量不高,与美国具有一定的技术差距;近些年国
内专利申请量不断提升,但是重点专利2015年起有所下降,说明国内申请人仍
然热衷于该领域的技术创新,但是该领域技术已经日趋成熟,申请人的技术创新
创造性高度较低,而国外申请人从2014年开始申请量已经日渐减少,同样说明
了该领域的技术创新的空间不大,国外申请人已经慢慢减少对此项技术的研发。2.3 X86虚拟化技术专利技术发展路线
自IBM 研究中心在试验室里实现了其主机的镜像,虚拟机一直在大型机和小型
机中运行, 直到二十世纪九十年代年VMware解决了一度被认为不太可能完成的
x86平台的虚拟化问题,并且开创了x86平台的虚拟化市场。下面将从x86虚拟
机技术中硬件虚拟机以及操作系统虚拟机两个方面记述x86虚拟技术的发展脉络。图1给出了x86架构下硬件虚拟机技术和操作系统虚拟机技术的发展脉络及关
键专利申请,根据技术发展特点主要分为三个阶段:x86虚拟技术最早期应用者
探索阶段、x86虚拟技术用到有限应用的开发和测试阶段,以及x86虚拟技术投
入到生产系统和企业标准化应用阶段。
图1 专利技术发展路线
硬件虚拟技术
硬件虚拟机支持在一台计算机上存在多个运行时环境,每个运行时环境可以
支持一个操作系统。硬件虚拟机软件主要有三种实现方式:仿真(也是整系统模拟,动态翻译全虚拟化),虚拟机模拟完整的硬件;半虚拟化,例如Xen;本地
虚拟(也是全虚拟化)。
由于X86体系架构固有的虚拟化技术漏洞,基于x86体系架构的系统虚拟机技
术长期没有得到发展。经过前期探索形成一些x86架构虚拟技术的不成形的研究
构思,例如CN97182273,1997.6.25一种改进的微处理器,提出对主处理硬件形
态化;直至1998年PCT专利申请WO9918484和WO9918486第一篇严格意义上
的关于x86架构虚拟技术的研究成果出现,在存储器和CPU之间添加预处理器(虚拟机解释器(VMI))能改善虚拟机指令的处理。由于二十世纪外国对中国专利申
请布局不够重视,相关技术首次在中国申请专利还是在2001年,专利号为
CN1596398,发明名称为对虚拟机解释器(VMI)加速硬件的软件支持,将应用程序
编程接口(API)规定用于软件陷阱的附加功能,软件陷阱从虚拟机硬件中消除对于