主流虚拟化技术基础知识和发展趋势
什么是虚拟化技术

什么是虚拟化技术虚拟化技术是一种将计算机资源进行抽象化的技术手段,通过软件或者硬件的虚拟化,将一台物理服务器分割成多个虚拟机,并使多个虚拟机能够独立运行不同的操作系统和应用程序。
通过虚拟化技术,可以更好地利用硬件资源,提升服务器的性能和灵活性。
本文将从虚拟化技术的基本原理、应用场景以及优势与挑战等方面来详细介绍什么是虚拟化技术。
一、虚拟化技术的基本原理虚拟化技术的基本原理是通过创建虚拟机管理器(VMM)来实现。
虚拟机管理器是一种软件或者硬件的抽象层,负责在物理服务器上创建、启动和管理多个虚拟机。
每个虚拟机拥有自己的独立的软件环境,包括操作系统、应用程序和虚拟硬件。
在虚拟化技术中,有两种主要的虚拟化方式:全虚拟化和半虚拟化。
全虚拟化方式通过在虚拟机中模拟全套的硬件,使得虚拟机能够完全独立运行。
而半虚拟化方式则是通过修改操作系统内核,使得虚拟机可以与宿主机共享硬件资源,提高性能的同时也减少了对硬件的要求。
二、虚拟化技术的应用场景虚拟化技术在各个领域都有广泛的应用。
以下是几个典型的应用场景:1. 服务器虚拟化:通过虚拟化技术,可以将一台物理服务器划分为多个虚拟机,提升服务器的利用率。
不同的虚拟机可以运行不同的操作系统和应用程序,实现不同的功能需求。
2. 桌面虚拟化:桌面虚拟化技术可以将用户的桌面环境从本地转移到远程服务器上,用户可以通过终端设备访问虚拟桌面,实现跨平台和远程办公。
3. 网络虚拟化:网络虚拟化技术可以将物理网络划分为多个逻辑网络,实现网络资源的灵活分配和管理。
通过虚拟化技术可以提供更好的网络性能和安全性。
4. 存储虚拟化:存储虚拟化技术将多个物理存储设备抽象为一个逻辑存储池,实现对存储资源的集中管理和分配。
三、虚拟化技术的优势虚拟化技术具有以下几个显著的优势:1. 提高硬件利用率:虚拟化技术可以将一台物理服务器划分为多个虚拟机,提高服务器的资源利用率,节约硬件成本。
2. 灵活性和可扩展性:通过虚拟化技术,可以根据实际需求快速创建、启动和停止虚拟机,实现资源的弹性分配和扩展。
服务器虚拟化基础知识

服务器虚拟化基础知识随着信息技术的快速发展,服务器虚拟化已成为企业IT架构中的重要技术。
服务器虚拟化能够提高服务器的利用率,降低运营成本,并增强系统的灵活性。
本文将介绍服务器虚拟化的基础知识。
一、服务器虚拟化的概念服务器虚拟化是指将物理服务器转化为多个虚拟服务器。
这些虚拟服务器共享物理服务器的硬件资源,但它们可以在同一时间内独立地运行不同的操作系统和应用程序。
通过服务器虚拟化,企业可以减少硬件设备的数量,提高硬件资源的利用率,并降低运营成本。
二、服务器虚拟化的优点1、提高资源利用率:传统的服务器在大多数时间里只运行一个操作系统和应用,导致硬件资源的大量浪费。
而通过服务器虚拟化,多个虚拟机可以共享硬件资源,使资源利用率大大提高。
2、降低运营成本:通过减少物理服务器的数量,企业可以降低电力消耗、冷却成本和设备维护成本。
服务器虚拟化还可以简化IT管理,提高系统的可靠性。
3、提高系统的灵活性:服务器虚拟化使得企业能够快速地创建、迁移和扩展虚拟机。
这使得企业能够更快地适应业务需求的变化,提高系统的灵活性。
三、服务器虚拟化的技术1、完全虚拟化:完全虚拟化是最早的虚拟化技术,它通过虚拟机监视器(Hypervisor)来管理和调度虚拟机的运行。
在完全虚拟化中,Hypervisor在物理服务器上运行,并允许多个虚拟机在Hypervisor 上运行。
2、准虚拟化:准虚拟化技术对操作系统进行了修改,使其能够直接运行在Hypervisor上。
与完全虚拟化相比,准虚拟化的性能更高,但实现起来更复杂。
3、半虚拟化:半虚拟化技术结合了完全虚拟化和准虚拟化的优点。
在半虚拟化中,Hypervisor仍然管理和调度虚拟机的运行,但操作系统对Hypervisor的依赖程度较低。
四、服务器虚拟化的应用场景1、数据中心:数据中心是服务器虚拟化的主要应用场景。
通过服务器虚拟化,企业可以降低数据中心的能源消耗和设备维护成本,并提高数据中心的可靠性。
虚拟现实技术:原理、应用与发展趋势

虚拟现实技术:原理、应用与发展趋势虚拟现实(Virtual Reality,简称VR)是一种通过计算机技术模拟出的三维环境,使用户能够身临其境。
它通过引入视觉、听觉和触觉等感官,让用户感受到与真实世界相似的体验。
虚拟现实技术原理复杂,应用广泛,且正在快速发展。
一、原理1.1 人机交互技术:虚拟现实技术主要通过人机交互技术实现,用户通过佩戴头戴式显示器(Head-Mounted Display,简称HMD),进入虚拟环境,并通过操作手柄或其他设备与虚拟环境进行互动。
1.2 感知技术:虚拟现实技术利用计算机生成的图像和声音来模拟现实场景,以产生与真实世界几乎相同的感觉体验。
其中,3D图像技术和立体声技术是实现虚拟现实的关键。
二、应用2.1 游戏领域:虚拟现实技术在游戏领域的应用是其中最为广泛的,通过虚拟现实技术,玩家可以沉浸在游戏世界中,感受到更真实的游戏体验。
2.2 教育培训领域:虚拟现实技术在教育培训领域的应用也越来越多。
例如,通过虚拟现实技术,学生可以身临其境地参观名胜古迹,进行实地探险,提高学习兴趣和效果。
2.3 医疗领域:虚拟现实技术在医疗领域也有广泛的应用,例如手术模拟和康复训练等,能够帮助医生和患者更准确地进行治疗和康复。
2.4 娱乐媒体领域:虚拟现实技术在娱乐媒体领域的应用也越来越多,例如观影体验的提升和虚拟现实电影等,可以极大程度地增强娱乐体验。
三、发展趋势3.1 硬件技术:虚拟现实技术的发展不能离开硬件技术的支持。
随着技术的不断进步,头戴式显示器、追踪设备和控制器等硬件产品将变得更加小巧、轻便和性能更强大,使用户能够更加自由地进入虚拟环境。
3.2 内容创作:虚拟现实技术还需要更多多样化、高质量的内容支持。
预计未来,将出现更多虚拟现实的游戏、教育课程、娱乐项目等。
同时,虚拟现实技术将与影视制作和动画制作等相关行业进行更深入的融合。
3.3 交互体验:虚拟现实技术的交互体验也将变得更加自然和流畅。
网络虚拟化技术

网络虚拟化技术随着数字化时代的到来,计算机网络已成为现代社会与生俱来的重要组成部分。
网络虚拟化技术的出现,改变了我们对计算机网络的认识与使用方式。
本文将从网络虚拟化的基本概念、发展历程、技术实现和应用场景四个方面详细介绍网络虚拟化技术。
一、网络虚拟化技术概述网络虚拟化技术是指将计算机网络中的网络资源(包括但不限于带宽、路由器、交换机等)进行虚拟化,并将它们组织在一个逻辑上与物理上更为分离的网络环境中。
这样,即使面对网络拓扑发生变化的情况,网络虚拟化技术依然可以保证网络的拓扑效果与性能。
网络虚拟化技术的重要性在于其能够将多个虚拟网络隔离开来,从而提高网络的管理和维护效率。
同时,网络虚拟化技术可以节省大量运营成本,尤其对于大型企业而言,这一优势尤为明显。
二、网络虚拟化技术的发展历程网络虚拟化技术的历史可以追溯到上个世纪的 60 年代中期,当时的 IBM 公司首次推出了主机虚拟化技术。
随着计算机技术的发展,虚拟化技术被广泛应用到计算机网络领域,在网络虚拟化技术的发展历程中,主要经历了以下三个阶段:1. 硬件虚拟化阶段硬件虚拟化是最早的一种虚拟化技术,它是通过在主机上通过软件仿真实现虚拟化的过程。
这种技术是在物理资源受到限制时解决的一种方法,但由于成本高昂,因此在每天的系统运行中很少使用。
2. 操作系统虚拟化阶段随着计算机技术的不断进步,操作系统虚拟化得到了广泛应用,这种虚拟化技术可以将一个物理主机分成多个逻辑上相互独立的虚拟机。
每个虚拟机可以运行一个不同版本的操作系统,并独立占用CPU、内存等资源。
这种虚拟化技术为企业信息化提供了更多的选择。
3. 网络虚拟化阶段随着网络虚拟化技术的发展,它被应用于各大云计算平台,成为了云计算的基础架构之一。
当今的网络虚拟化技术已经普及到各个领域,使得企业可以更加灵活地实现虚拟化等技术,大幅降低企业运营和维护成本。
三、网络虚拟化技术的技术实现网络虚拟化技术的最大特点是将一系列的物理设备虚拟化成为一台更加灵活、更加易于管理和维护的物理服务器。
计算机系统虚拟化基础知识

计算机系统虚拟化基础知识计算机系统虚拟化是指通过软件或硬件技术将一个物理计算机系统虚拟化为多个逻辑计算机系统的过程。
虚拟化技术可以让物理服务器的资源得到充分利用,提高服务器利用率,并提供更好的灵活性和可扩展性。
本文将介绍计算机系统虚拟化的基本概念、分类、应用以及优势。
一、计算机系统虚拟化的基本概念计算机系统虚拟化是指在一台物理计算机上创建多个逻辑计算机,每个逻辑计算机都能够运行一个完整的操作系统和应用程序。
虚拟机(Virtual Machine,VM)是一种模拟的计算机系统,它在物理计算机上运行,并提供一套虚拟化的硬件接口。
虚拟机监控器(Virtual Machine Monitor,VMM),也称为Hypervisor,是虚拟机的管理软件,它负责将物理计算机的资源划分为多个虚拟机,并在其上运行不同的操作系统和应用程序。
二、计算机系统虚拟化的分类计算机系统虚拟化可以分为两类:全虚拟化(Full Virtualization)和半虚拟化(Para-virtualization)。
1. 全虚拟化全虚拟化是指在虚拟机中运行未经修改的操作系统,虚拟机的操作系统不知道自己被虚拟化,并以为自己直接运行在物理计算机上。
在全虚拟化中,虚拟机监控器需要对虚拟机的指令进行二进制翻译,将不合法的指令替换成合法的指令,以保证虚拟机的正常运行。
全虚拟化可以实现对各种操作系统的支持,但由于指令的翻译会引入性能损失,因此在性能要求较高的场景下,全虚拟化的性能可能较低。
2. 半虚拟化半虚拟化是指在虚拟机中运行经过修改的操作系统,虚拟机的操作系统知道自己被虚拟化,并与虚拟机监控器进行通信,以获取底层资源。
由于虚拟机操作系统的修改,半虚拟化可以获得较高的性能,但对于需要修改操作系统的应用来说,半虚拟化可能需要重新编译或修改应用程序以适应虚拟化环境。
三、计算机系统虚拟化的应用计算机系统虚拟化广泛应用于服务器虚拟化、网络虚拟化、存储虚拟化等领域。
VMware虚拟化技术入门

VMware虚拟化技术入门随着云计算和大数据时代的来临,虚拟化技术逐渐成为了企业信息化建设的重要组成部分。
而在虚拟化领域中,VMware可谓是最为知名的品牌之一。
本文将着重介绍VMware虚拟化技术的入门基础知识和应用场景。
一、VMware虚拟化技术的基本原理虚拟化技术指的是将物理硬件或软件资源抽象化,使得多个虚拟环境可以在同一物理环境内运行而不会相互干扰。
VMware作为一种虚拟化技术,其基本原理就是创建虚拟机(Virtual Machine),并在虚拟机中虚拟出计算机硬件资源,包括CPU、内存、硬盘、网卡等,从而模拟出完整的计算机系统。
在VMware技术中,虚拟机和宿主机(物理机)之间的关系如下图所示:VMware基于宿主机的物理资源创建出一个虚拟平台,然后在这个虚拟平台上安装和运行多个虚拟机,这些虚拟机独立于宿主机的操作系统和硬件平台,而且相互之间也是相互隔离的。
虚拟化技术的出现极大地提高了应用程序的灵活性和可靠性,并且可以更好的利用物理资源,提高服务器的利用率。
二、VMware虚拟化技术的应用场景VMware虚拟化技术主要应用于企业级应用环境,其主要作用是提高服务器的利用率以及降低服务器的管理和维护成本。
下面我们将根据VMware技术的特点,为您介绍其应用场景:1. 服务器的资源整合VMware虚拟化技术可以将多个物理服务器的资源整合成一个虚拟化服务器,从而实现服务器整体资源的共享和动态分配,提高了服务器利用率。
2. 应用程序迁移应用程序迁移是指将应用程序从一台服务器转移到另一台服务器。
在传统的物理环境中,应用程序迁移非常困难,因为这需要对服务器进行重新配置。
但VMware虚拟化技术可以轻松实现应用程序的迁移,只需将虚拟机文件复制到新的服务器上即可。
3. 服务器故障恢复在传统的服务器环境中,一旦服务器出现故障,就需要花费大量的时间和人力将数据迁移到备用服务器上,同时还需要对故障的服务器进行修理或更换,这将耗费大量的时间和金钱。
虚拟化基础知识介绍

随着虚拟机数量的增加,管理复杂性也会相应提 高,需要专业的虚拟化管理工具和人员来维护和 管理虚拟化环境。
安全风险
虚拟化技术可能会增加安全风险,例如虚拟机逃 逸攻击和侧信道攻击等。因此,需要加强虚拟化 环境的安全防护和管理。
03 存储虚拟化
存储虚拟化原理及作用
原理
存储虚拟化通过抽象、聚合和自动化 等技术,将物理存储资源转化为逻辑 视图,并提供统一的管理和访问接口 。
• 降低应用部署难度:无需考虑用户设备的操作系统和硬件配置,简化应 用部署流程。
• 提高应用兼容性:使得同一应用程序可以在不同操作系统和硬件平台上 运行,提高了应用的兼容性。
• 实现应用快速响应:可以快速响应用户的应用需求,提高用户体验。
桌面与应用虚拟化实施建议
选择合适的技术方案
根据需求评估结果,选择适合 的桌面和应用虚拟化技术方案。
培训和支持
为用户提供必要的培训和技术 支持,确保用户能够熟练使用 虚拟桌面和应用。
评估需求
在实施前,应对企业或组织的 需求进行充分评估,明确虚拟 化的目标和范围。
制定实施计划
制定详细的实施计划,包括虚 拟化环境的搭建、用户迁移、 数据备份等。
监控和维护
建立监控机制,及时发现并解 决虚拟化环境中出现的问题, 确保系统的稳定性和可用性。
提升数据安全性
数据存储在服务器端,减少了数据泄露的风险。
提高资源利用率
通过集中化管理,降低硬件成本,提高资源利用 率。
实现桌面环境快速部署
可以快速为用户配置和部署桌面环境,提高工作 效率。
应用虚拟化原理及作用
• 原理:应用虚拟化是将应用程序与操作系统分离,使得应用程序可以在 不同的操作系统和硬件平台上运行。通过流技术或容器技术等,将应用 程序的运行环境与用户的设备解耦,实现应用程序的快速部署和灵活使 用。
关于虚拟现实技术的应用现状及发展方向

关于虚拟现实技术的应用现状及发展方向摘要:虚拟现实技术作为一种综合多种科学技术的计算机领域新技术,是国内外计算机仿真应用研究的热点,涉及众多发展和应用领域,极大地丰富了我们的生活。
本文针对虚拟现实的历史、发展、应用现状进行了简要的概述,同时还对虚拟现实未来发展方向做了初步的展望。
关键词:虚拟现实交互技术虚拟环境一、虚拟现实技术的发展概述VR的发展概括起来大致为三个阶段:20世纪50年代到70年代,是虚拟现实技术的探索阶段;80年代前中期,是虚拟现实技术从实验室走向实用的阶段;80年代末到21世纪初,是虚拟现实技术快速发展时期。
1965年“虚拟现实技术之父”Lvan Sutherland博士在《终极的显示》的论文中首次提出了具有交互图形显示、力反馈设备以及声音提示的虚拟现实系统的基本思想,随后几年又展开了头盔式显示器(HMD)的研制工作,取得了显著的成绩,因此这一理论影响至今。
在第一个HMD的样机完成不久,研制者又把能模拟力量和触觉的力反馈装置加入到这个系统中。
1970年,出现了第一个功能较齐全的HMD系统。
基于从60年代以来所取得的一系列成就,美国的JaronLanier在上世纪80年代正式提出了“VirtualReality”一词。
美国宇航局(NASA)及美国国防部组织了一系列有关虚拟现实技术的研究,并取得了令人瞩目的研究成果,从而引起了人们对虚拟现实技术的广泛关注。
二、虚拟现实技术的应用现状1、军事与航空航天虚拟现实的技术根源可以追随到军事领域,军事应用是推动虚拟现实技术发展的主要力量,是虚拟现实系统最为重要的应用领域。
模拟训练一直是军事与航天工业中的一个重要课题,这为VR提供了广阔的应用前景。
海湾战争的美国士兵对周边的环境不觉得陌生,是由于虚拟现实已把他们带入那漫无边际的风尘黄沙,让他们“身临其境”感受到大漠的荒凉。
美国国防部先进研究课题局(DARPA)自80年代初起一直致力于研究称为SIMNET的虚拟战场系统,这个课题结果产生了仿真网络,连到美国和德国200多个坦克仿真器。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、背景知识云计算平台需要有资源池为其提供能力输出,这种能力包括计算能力、存储能力和网络能力,为了将这些能力调度到其所需要的地方,云计算平台还需要对能力进行调度管理,这些能力均是由虚拟化资源池提供的。
云计算离不开底层的虚拟化技术支持。
维基百科列举的虚拟化技术有超过60种,基于X86(CISC)体系的超过50种,也有基于RISC体系的,其中有4 种虚拟化技术是当前最为成熟而且应用最为广泛的,分别是:VMWARE的ESX、微软的Hyper-V、开源的XEN和KVM。
云计算平台选用何种虚拟化技术将是云计算建设所要面临的问题,文章就4种主流虚拟化技术的架构层面进行了对比分析。
形成资源池计算能力的物理设备,大概有两种,一种是基于RISC的大/小型机,另一种是基于CISC的X86服务器。
大/小型机通常意味着高性能、高可靠性和高价格,而X86服务器与之相比有些差距,但随着Inter和AMD等处理器厂商技术的不断发展,原本只在小型机上才有的技术已经出现在了X86处理器上,如64位技术、虚拟化技术、多核心技术等等,使得X86服务器在性能上突飞猛进。
通过TPC组织在2011年3月份所公布的单机计算机性能排名中可以看出,4路32核的X86服务器性能已经位列前10名,更重要的是X86服务器的性价比相对小型机有约5倍的优势。
因此,选择X86服务器作为云计算资源池,更能凸显出云计算的低成本优势。
由于单机计算机的处理能力越来越大,以单机资源为调度单位的颗粒度就太大了,因此需要有一种技术让资源的调度颗粒更细小,使资源得到更有效和充分的利用,这就引入了虚拟化技术。
当前虚拟化技术中主流和成熟的有4种:VMWARE的ESX、微软的Hyper-V、开源的XEN和KVM。
二、虚拟化架构分析从虚拟化的实现方式来看,虚拟化架构主要有两种形式:宿主架构和裸金属架构。
在宿主架构中的虚拟机作为主机操作系统的一个进程来调度和管理,裸金属架构下则不存在主机操作系统,它是以Hypervisor直接运行在物理硬件之上,即使是有类似主机操作系统的父分区或Domain 0,也是作为裸金属架构下的虚拟机存在的。
宿主架构通常用于个人PC上的虚拟化,如WindowsVirtual PC,VMware Workstation,Virtual Box,Qemu等,而裸金属架构通常用于服务器的虚拟化,如文中提及的4种虚拟化技术。
2.1 ESX的虚拟化架构VMWare (Virtual Machine ware)是一个“虚拟PC”软件公司。
它的产品可以使你在一台机器上同时运行二个或更多Windows、DOS、LINUX系统。
与“多启动”系统相比,VMWare采用了完全不同的概念。
多启动系统在一个时刻只能运行一个系统,在系统切换时需要重新启动机器。
VMWare是真正“同时”运行,多个操作系统在主系统的平台上,就象标准Windows应用程序那样切换。
而且每个操作系统你都可以进行虚拟的分区、配置而不影响真实硬盘的数据,你甚至可以通过网卡将几台虚拟机用网卡连接为一个局域网,极其方便。
安装在VMware操作系统性能上比直接安装在硬盘上的系统低不少,因此,比较适合学习和测试。
ESXI服务器启动时,首先启动Linux Kernel,通过这个操作系统加载虚拟化组件,最重要的是ESX的Hypervisor组件,称之为VMkernel,VMkernel 会从LinuxKernel完全接管对硬件的控制权,而该Linux Kernel作为VMkernel 的首个虚拟机,用于承载ESX的serviceConsole,实现本地的一些管理功能。
VMkernel负责为所承载的虚拟机调度所有的硬件资源,但不同类型的硬件会有些区别。
虚拟机对于CPU和存资源是通过VMkernel直接访问,最大程度地减少了开销,CPU的直接访问得益于CPU硬件辅助虚拟化(Intel VT-x和AMD AMD-V,第一代虚拟化技术),存的直接访问得益于MMU(存管理单元,属于CPU中的一项特征)硬件辅助虚拟化(Intel EPT和AMD RVI/NPT,第二代虚拟化技术)。
虚拟机对于I/O设备的访问则有多种方式,以网卡为例,有两种方式可供选择:一是利用I/O MMU硬件辅助虚拟化(Intel VT-d和AMD-Vi)的VMDirectPath I/O,使得虚拟机可以直接访问硬件设备,从而减少对CPU的开销;二是利用半虚拟化的设备VMXNETx,网卡的物理驱动在VMkernel中,在虚拟机中装载网卡的虚拟驱动,通过这二者的配对来访问网卡,与仿真式网卡(IntelE1000)相比有着较高的效率。
半虚拟化设备的安装是由虚拟机中VMware tool来实现的,可以在Windows虚拟机的右下角找到它。
网卡的这两种方式,前者有着显著的先进性,但后者用得更为普遍,因为VMDirectPath I/O与VMware虚拟化的一些核心功能不兼容,如:热迁移、快照、容错、存过量使用等。
ESX的物理驱动是置在Hypervisor中,所有设备驱动均是由VMware预植入的。
因此,ESX对硬件有严格的兼容性列表,不在列表中的硬件,ESX将拒绝在其上面安装。
2.2 Hyper-V的虚拟化架构Hyper-V是微软新一代的服务器虚拟化技术,首个版本于2008年7月发布,目前最新版本是2011年4月发布R2 SP1版,Hyper-V有两种发布版本:一是独立版,如Hyper-V Server 2008,以命令行界面实现操作控制,是一个免费的版本;二是嵌版,如Windows Server 2008,Hyper-V作为一个可选开启的角色。
对于一台没有开启Hyper-V角色的Windows Server 2008来说,这个操作系统将直接操作硬件设备,一旦在其中开启了Hyper-V角色,系统会要求重新启动服务器。
虽然重启后的系统在表面看来没什么区别,但从体系架构上看则与之前的完全不同了。
在这次重启动过程中,Hyper-V的Hypervisor接管了硬件设备的控制权,先前的Windows Server 2008则成为Hyper-V的首个虚拟机,称之为父分区,负责其他虚拟机(称为子分区)以及I/O设备的管理。
Hyper-V要求CPU必须具备硬件辅助虚拟化,但对MMU硬件辅助虚拟化则是一个增强选项。
其实Hypervisor仅实现了CPU的调度和存的分配,而父分区控制着I/O 设备,它通过物理驱动直接访问网卡、存储等。
子分区要访问I/O设备需要通过子分区操作系统的VSC(虚拟化服务客户端),对VSC的请求由VMBUS(虚拟机总线)传递到父分区操作系统的VSP(虚拟化服务提供者),再由VSP重定向到父分区的物理驱动,每种I/O设备均有各自的VSC和VSP配对,如存储、网络、视频和输入设备等,整个I/O设备访问过程对于子分区的操作系统是透明的。
其实在子分区操作系统,VSC和VMBUS就是作为I/O设备的虚拟驱动,它是子分区操作系统首次启动时由Hyper-V 提供的集成服务包安装,这也算是一种半虚拟化的设备,使得虚拟机与物理I/O设备无关。
如果子分区的操作系统没有安装Hyper-V集成服务包或者不支持Hyper-V集成服务包(对于这种操作系统,微软称之为Unenlightened OS,如未经认证支持的Linux版本和旧的Windows版本),则这个子分区只能运行在仿真状态。
其实微软所宣称的启蒙式(Enlightenment)操作系统,就是支持半虚拟化驱动的操作系统。
Hyper-V的Hypervisor是一个非常精简的软件层,不包含任何物理驱动,物理服务器的设备驱动均是驻留在父分区的Windows Server 2008中,驱动程序的安装和加载方式与传统Windows系统没有任何区别。
因此,只要是Windows支持的硬件,也都能被Hyper-V所兼容。
2.3 XEN的虚拟化架构XEN最初是剑桥大学Xensource的一个开源研究项目,2003年9月发布了首个版本XEN 1.0,2007年Xensource被Citrix公司收购,开源XEN转由继续推进,该组织成员包括个人和公司(如Citrix、Oracle等)。
Xen的缺点是操作系统必须进行显式地修改(“移植”)以在Xen上运行(但是提供对用户应用的兼容性),所以比较麻烦。
使得Xen无需特殊硬件支持,就能达到高性能的虚拟化。
Linux的官方核在较早之前已经去掉了对Xen的支持。
相对于ESX和Hyper-V来说,XEN支持更广泛的CPU架构,前两者只支持CISC的X86/X86_64 CPU架构,XEN除此之外还支持RISC CPU架构,如IA64、ARM等。
XEN的Hypervisor是服务器经过BIOS启动之后载入的首个程序,然后启动一个具有特定权限的虚拟机,称之为Domain 0(简称Dom 0)。
Dom 0的操作系统可以是Linux或Unix,Domain 0实现对Hypervisor控制和管理功能。
在所承载的虚拟机中,Dom 0是唯一可以直接访问物理硬件(如存储和网卡)的虚拟机,它通过本身加载的物理驱动,为其它虚拟机(Domain U,简称DomU)提供访问存储和网卡的桥梁。
XEN支持两种类型的虚拟机,一类是半虚拟化(PV,Paravirtualization),另一类是全虚拟化(XEN称其为HVM,Hardware Virtual Machine)。
半虚拟化需要特定核的操作系统,如基于Linux paravirt_ops(Linux核的一套编译选项)框架的Linux核,而Windows操作系统由于其封闭性则不能被XEN的半虚拟化所支持,XEN的半虚拟化有个特别之处就是不要求CPU具备硬件辅助虚拟化,这非常适用于2007年之前的旧服务器虚拟化改造。
全虚拟化支持原生的操作系统,特别是针对Windows这类操作系统,XEN的全虚拟化要求CPU具备硬件辅助虚拟化,它修改的Qemu仿真所有硬件,包括:BIOS、IDE控制器、VGA显示卡、USB控制器和网卡等。
为了提升I/O性能,全虚拟化特别针对磁盘和网卡采用半虚拟化设备来代替仿真设备,这些设备驱动称之为PV on HVM,为了使PV on HVM有最佳性能。
CPU应具备MMU硬件辅助虚拟化。
XEN的Hypervisor层非常薄,少于15万行的代码量,不包含任何物理设备驱动,这一点与Hyper-V是非常类似的,物理设备的驱动均是驻留在Dom 0中,可以重用现有的Linux设备驱动程序。
因此,XEN对硬件兼容性也是非常广泛的,Linux支持的,它就支持。
2.4 KVM的虚拟化架构KVM的全称是Kernel-based Virtual Machine,字面意思是基于核虚拟机。