什么是 Hypervisor?

Hypervisor 是一种利用虚拟化技术来创建、运行和管理虚拟机(VM)的软件,也被称为虚拟机监控器(VMM)。Hypervisor 会将自身的操作系统和资源与所管理的虚拟机隔离开来。

Hypervisor 的主要优势在于,它允许多个特性截然不同的操作系统同时运行,并共享相同的虚拟化硬件资源。如果没有这项能力,一台计算机硬件系统上通常只能运行一个操作系统。

hypervisor

Hypervisor 允许开发人员在同一套硬件系统上同时运行多个操作系统。

Hypervisor 的功能

数据复制与克隆

复制和克隆虚拟机是一项复杂任务。相比传统基于存储的复制方式(需要完整复制服务器上所有虚拟机的存储卷,且占用大量存储空间),利用 Hypervisor 来进行虚拟机复制或克隆更简单且更具成本优势。

使用 Hypervisor 进行复制或克隆非常灵活,您可以选择需要复制的虚拟机及其组件,而不必复制全部虚拟机,从而节省服务器存储空间。基于 Hypervisor 的硬件无关复制功能,可以让您轻松将数据副本迁移并存储到任意存储设备中。

服务器整合

Hypervisor 通常内置可视化管理面板,并可通过增强功能提供更高的可见性,从而实现对服务器的集中整合与管理。即使不同虚拟机运行着不同的操作系统,也能集中管理。

工业控制自动化整合

通过使用 Hypervisor 和虚拟机,工业控制自动化系统制造商可以将原本分散的计算机化组件整合到单一嵌入式系统平台上。

测试环境

Hypervisor 可以创建虚拟系统,用于在开发过程中测试系统和应用程序,从而更方便地验证代码和系统运行的正确性。

桌面虚拟化

借助 Hypervisor,服务器可以托管客户端或员工的虚拟桌面,该桌面可复制其物理桌面,并可通过互联网进行访问。

Hypervisor 的优势

嵌入式 Hypervisor 专为满足嵌入式系统的需求而设计,通常为 Type 1(裸机型)Hypervisor,用于支持设备内部嵌入式系统的虚拟化需求,而非 IT 服务器或台式计算机。嵌入式 Hypervisor 的整体软件代码体积较小,可在嵌入式设备中提供实时或高速的虚拟化能力,并支持多个相互隔离的虚拟机。

由于其体积小且资源需求有限,嵌入式 Hypervisor 被设计成对设备系统资源占用极低,并可支持实时响应延迟。这类 Hypervisor 能够在不同虚拟机之间实施调度策略,并为嵌入式设备的实时系统组件提供支持。

Hypervisor 的分类类型

Type 1 Hypervisor(裸机型) Type 2 Hypervisor(托管型)
Type 1 Hypervisor(又称裸机型 Hypervisor)直接运行在主机系统的硬件之上,用于创建虚拟机(VM)并管理其中运行的客人操作系统。它取代了主机操作系统,由 Hypervisor 直接调度硬件资源分配给各个虚拟机。在大多数情况下,嵌入式 Hypervisor 属于 Type 1 类型。例如,KVM 就是一种被集成到现代 Linux 内核中的 Hypervisor。 Type 2 Hypervisor 作为软件层或应用程序运行在常规操作系统之上,也被称为托管型 Hypervisor。它通过将客人操作系统从主人操作系统中抽象出来进行工作。分配给这些虚拟机(VM)的资源首先由主人操作系统进行调度,然后再与主机系统中的底层硬件交互。

Type 1 与 Type 2 Hypervisor 的区别

Type 1 Hypervisor(裸机型)与 Type 2 Hypervisor(托管型)的主要区别在于,Type 1 直接运行在主机硬件上,而 Type 2 则作为软件层或应用运行在传统操作系统之上。大多数嵌入式 Hypervisor 属于 Type 1 类型。

嵌入式 Hypervisor

硬件要求

嵌入式系统采用多种处理器架构类型。所选用的嵌入式 Hypervisor(通常为 Type 1 类型)需要与嵌入式系统或设备中使用的处理器兼容。

鉴于嵌入式系统的设计,大多数处理器在资源使用上有严格限制,尤其是在功耗和内存使用方面。嵌入式 Hypervisor 必须在这些限制范围内运行。此外,它还需要能够在系统各组件之间实现快速、低延迟的通信。基于实时操作系统的嵌入式 Hypervisor 有助于提供这种高速通信能力。

资源要求

嵌入式系统硬件的成本与技术限制要求嵌入式 Hypervisor 必须高效利用资源。在这些条件下,嵌入式 Hypervisor 通常保持较小的内存占用量,一般在几十到几百 KB 之间。其具体大小取决于实现效率和所提供的功能水平。

应用场景

随着物联网的发展和智能边缘系统的普及,嵌入式 Hypervisor 的应用场景不断扩大,涵盖系统硬件简化、车辆诊断、工业环境中的传感器输入与执行器输出,以及多操作系统的支持等。

hypervisor interoperation

嵌入式 Hypervisor 必须在处理器的使用限制内运行,同时能够与系统的所有组件快速通信。

硬件虚拟化与嵌入式 Hypervisor 的工作原理

作为 Hypervisor 运行的计算机硬件被称为主机(Host),而在其上创建并作为资源使用的所有虚拟机则称为客机(Guest)。在 IT 系统中,服务器和桌面系统早已使用 Hypervisor。随着 Hypervisor 的普及,它也被广泛应用于嵌入式平台和系统中。

Hypervisor 会将 CPU、内存和存储等资源作为共享池,并允许将这些资源重新分配给不同的现有虚拟机,或分配给新创建的虚拟机。

为了运行这些虚拟机,Hypervisor 需要利用多种操作系统级机制,例如内存管理器、进程调度器、输入/输出(I/O)资源等。

Hypervisor 会将资源分配给每个虚拟机,并根据系统的物理计算机资源来管理和调度这些虚拟机的资源。实际的计算机硬件负责执行任务(例如 CPU 执行虚拟机的指令),而 Hypervisor 负责管理所有调度过程。

风河如何提供支持?

风河开物Hypervisor

风河开物Hypervisor 采用 Type 1 Hypervisor,将多操作系统和不同重要性等级的应用整合到单一边缘计算软件平台上,实现设计的简化、安全与长期适应性保障。通过创建和管理虚拟机,其安全隔离功能可以将关键型应用与通用应用分开,从而轻松实现新旧系统的集成运行。

» 了解更多

Helix Virtualization Platform

图1. 风河开物Hypervisor 架构

Hypervisor 常见问答

Hypervisor(也称虚拟机监控器,VMM)是一种软件层,使多个虚拟机可以在同一台物理机器上运行。它负责在虚拟机之间分配内存、CPU、存储等资源,并为它们提供隔离层。
Hypervisor 主要分为两类:Type 1(裸机型)Hypervisor,直接运行在硬件之上;Type 2(托管型)Hypervisor,运行在宿主操作系统之上。
使用 Hypervisor 可以让多台虚拟机运行在一台物理机器上,从而提高资源利用率、降低硬件成本,并提升软件管理与部署的灵活性。
Hypervisor 常用于服务器整合、云计算、软件开发与测试,以及信息安全与隔离等场景。
Hypervisor 通过确保每个虚拟机都运行在独立的虚拟化环境中并拥有自己的资源,实现虚拟机之间的隔离,从而防止一台虚拟机访问或影响另一台虚拟机的资源。
常见的 Hypervisor 功能包括实时迁移、快照、资源分配,以及网络与存储虚拟化。
实时迁移允许正在运行的虚拟机在不中断运行的情况下,从一台物理机器迁移到另一台物理机器。这是通过在虚拟机运行过程中,将其状态和内存内容传输到新机器上实现的。
快照是虚拟机在某一时间点的状态和配置的副本,可用于为虚拟机创建备份,或在出现错误或问题时方便地回滚到先前状态。
常见的 Hypervisor 信息安全功能包括虚拟机加密、安全启动、安全固件更新和访问控制。
常见的 Hypervisor 产品包括 VMware ESXi、Microsoft Hyper-V、KVM 和 Oracle VirtualBox。