摘自:http://www.ibm.com/developerworks/cn/linux/l-linuxvirt/
虚拟化的类型
实现虚拟化的方法不止一种。实际上,有几种方法都可以通过不同层次的抽象来实现相同的结果。本节将介绍 Linux 中常用的 3 种虚拟化方法,以及它们相应的优缺点。业界有时会使用不同的术语来描述相同的虚拟化方法。本文中使用的是最常用的术语,同时给出了其他术语以供参考。
硬件仿真
毫无疑问,最复杂的虚拟化实现技术就是硬件仿真。在这种方法中,可以在宿主系统上创建一个硬件 VM 来仿真所想要的硬件,如图 1 所示。
图 1. 硬件仿真使用 VM 来模拟所需要的硬件
正如您所能预见的一样,使用硬件仿真的主要问题是速度会非常慢。由于每条指令都必须在底层硬件上进行仿真,因此速度减慢 100 倍的情况也并不稀奇。若要实现高度保真的仿真,包括周期精度、所仿真的 CPU 管道以及缓存行为,实际速度差距甚至可能会达到 1000 倍之多。
硬件仿真也有自己的优点。例如,使用硬件仿真,您可以在一个 ARM 处理器主机上运行为 PowerPC® 设计的操作系统,而不需要任何修改。您甚至可以运行多个虚拟机,每个虚拟器仿真一个不同的处理器。
完全虚拟化
完全虚拟化(full virtualization),也称为原始虚拟化,是另外一种虚拟化方法。这种模型使用一个虚拟机,它在客户操作系统和原始硬件之间进行协调(参见图 2)。“协调”在这里是一个关键,因为 VMM 在客户操作系统和裸硬件之间提供协调。特定受保护的指令必须被捕获下来并在 hypervisor 中进行处理,因为这些底层硬件并不由操作系统所拥有,而是由操作系统通过 hypervisor 共享。
图 2. 完全虚拟化使用 hypervisor 来共享底层硬件
虽然完全虚拟化的速度比硬件仿真的速度要快,但是其性能要低于裸硬件,因为中间经过了 hypervisor 的协调过程。完全虚拟化的最大优点是操作系统无需任何修改就可以直接运行。惟一的限制是操作系统必须要支持底层硬件(例如 PowerPC)。
超虚拟化
超虚拟化(paravirtualization)是另外一种流行的虚拟化技术,它与完全虚拟化有一些类似。这种方法使用了一个 hypervisor 来实现对底层硬件的共享访问,还将与虚拟化有关的代码集成到了操作系统本身中(参见图 3)。这种方法不再需要重新编译或捕获特权指令,因为操作系统本身在虚拟化进程中会相互紧密协作。
图 3. 超虚拟化与客户操作系统共享进程
正如前面介绍的一样,超虚拟化技术需要为 hypervisor 修改客户操作系统,这是它的一个缺点。但是超虚拟化提供了与未经虚拟化的系统相接近的性能。与完全虚拟化类似,超虚拟化技术可以同时支持多个不同的操作系统。
操作系统级的虚拟化
我们要介绍的最后一种技术是操作系统级的虚拟化,它使用的技术与前面所介绍的有所不同。这种技术在操作系统本身之上实现服务器的虚拟化。这种方法支持单个操作系统,并可以将独立的服务器相互简单地隔离开来(参见图 4)。
图 4. 操作系统级虚拟化实现服务器的隔离
操作系统级的虚拟化要求对操作系统的内核进行一些修改,但是其优点是可以获得原始性能。
分享到:
相关推荐
本篇文章将详细探讨四种主要的虚拟化类型:寄居虚拟化、裸金属虚拟化、操作系统虚拟化以及虚拟化的内容,如CPU虚拟化、内存虚拟化、I/O虚拟化等。 1. 寄居虚拟化 寄居虚拟化,也称为“层上虚拟化”,在这种模式下,...
### 二、微软虚拟化类型 微软提供了全面的虚拟化解决方案,涵盖服务器、桌面、应用程序以及虚拟化管理等多个层面: - **服务器虚拟化**:以Windows Server 2008 R2 Hyper-V为核心,集成于Windows服务中,支持在一...
2. **虚拟化类型**:虚拟化包括服务器虚拟化、存储虚拟化、网络虚拟化、桌面虚拟化等多种形式。其中,服务器虚拟化是最常见的形式,允许在一个物理服务器上运行多个虚拟机(VM);存储虚拟化将分散的物理存储资源...
虚拟化安全是当今信息安全管理领域的一个重要议题,随着虚拟化技术的广泛应用,其安全问题日益引起业界的关注。本文主要从CISSP(Certified Information Systems Security Professional)的角度,探讨虚拟化安全的...
虚拟化类型 全虚拟化 使用VMM实现CPU、内存、设备I/O的虚拟化,而GuestOS和计算机系统硬件\n都不需要进行修改。该方式兼容性好,但会给处理器带来额外开销 半虚拟化 使用VMM实现CPU和内存虚拟化,设备I/O...
在选择虚拟化类型时,可以考虑半虚拟化或全虚拟化。半虚拟化(Para-virtualization)提供更高的性能,因为它允许操作系统直接与虚拟化层交互,而全虚拟化(Full Virtualization)则提供更接近物理机器的环境,但可能...
3. 全虚拟化和半虚拟化类型特点 虚拟化可以分为全虚拟化和半虚拟化两种类型。全虚拟化指 VMM 虚拟出来的平台是现实中存在的平台,因此对于客户机操作系统来说,并不知道是运行在虚拟的平台上。半虚拟化指通过对客户...
CPU 虚拟化会增加不同的开销量,根据工作负载和使用的虚拟化类型。对于受 CPU 约束的应用程序,CPU 虚拟化开销包括必须执行的额外指令,会导致整体性能下降。对于不受 CPU 约束的应用程序,CPU 虚拟化可能会提高 CPU...
#### 五、KVM中的虚拟化类型对比 Intel x86处理器定义了四种特权级别,分别为Ring0至Ring3。不同的虚拟化技术根据其实现方式,在这些特权级别中各有侧重。 1. **ESXi**:属于全虚拟化技术,VMM运行在Ring0,完全...
2. **虚拟化类型**:介绍全虚拟化、半虚拟化和容器等不同类型的虚拟化技术,及其各自的特点和适用场景。 3. **虚拟化组件**:讨论虚拟机监控器(VMM)、Hypervisor的角色,以及它们如何在物理硬件和虚拟机之间建立...
**虚拟化类型** 1. **硬件虚拟化**:直接在硬件层面上实现虚拟化,如VMware ESXi。 2. **基于操作系统的虚拟化**:如容器技术,如Docker,依赖宿主机操作系统。 3. **基于应用程序的虚拟化**:如应用虚拟化,使应用...
5. 虚拟化类型: - Type 1(裸金属)虚拟化:直接在硬件上运行,性能更优,例如ESXi。 - Type 2(宿主型)虚拟化:在宿主操作系统上运行,如VMware Workstation和VirtualBox。 - Hybrid(混合型)虚拟化:结合了...
系统虚拟化主要分为以下几种类型: 1. 硬件仿真(Emulation):完全模拟硬件设备,允许不同架构的虚拟机在同一台物理机上运行,但效率较低。 2. 全虚拟化(Full Virtualization):无需修改客户机操作系统,使用二...
2. 虚拟化类型 - 存储虚拟化:整合多个存储设备,形成一个统一的存储池,使用户能灵活分配和使用存储资源。 - 网络虚拟化:虚拟化物理网络接口,构建内部虚拟局域网,实现内外部网络通信。 - 系统平台虚拟化:将...
在IT领域,虚拟化是一项关键技术,它允许单个硬件系统上运行多个独立的虚拟环境,每个环境都像在单独的物理设备上运行一样。然而,不是所有CPU都原生支持虚拟化,特别是较旧的型号。"CPU不支持虚拟化补丁"针对的就是...
**一、虚拟化类型** 1. **服务器虚拟化**:通过虚拟化技术,一台物理服务器可以运行多个相互隔离的虚拟服务器,显著提高了硬件资源的利用率。 2. **存储虚拟化**:将多个存储设备整合成一个逻辑存储池,便于管理和...
**微软桌面虚拟化类型** 1. **VDI (Windows VECD)**:用户通过网络连接远程操作服务器上的虚拟桌面,实现桌面环境的集中化管理。 2. **基于服务器的虚拟化**:如Enterprise Desktop Virtualization,基于Virtual ...
理论学习上,学生需要掌握虚拟化的基本概念,如虚拟化类型(如硬件虚拟化、操作系统级虚拟化等),虚拟机的工作原理,以及虚拟网络和虚拟存储的构建原理。特别是VMware vSphere,作为业界广泛采用的服务器虚拟化解决...
1. 服务器虚拟化:这是最常见的虚拟化类型,它允许在单个物理服务器上运行多个虚拟机,每个虚拟机都运行自己的操作系统和应用程序。 2. 存储虚拟化:存储虚拟化通过创建一个独立于实际硬件的逻辑存储层来管理存储...