关于 ZVM

ZVM源自自主研发的嵌入式实时虚拟机,经过持续演进,已发展成为一款嵌入式虚拟化实时操作系统。 ZVM将虚拟化能力内生于实时操作系统,在同一系统底座上支撑本地任务与多Guest OS运行,并面向复杂外设提供资源管理、隔离与复用能力。

ZVM采用原创“RTOS原生虚拟化”架构,以一体化、最小栈、无管理域为核心:将实时内核与虚拟化功能一体化,减少关键执行路径中的特权级与上下文切换;通过虚拟化栈最小化,裁减非必要的软件层级与通用组件;通过无管理域服务下沉,将虚拟I/O、通信等系统服务模块化内置,实现能力按需扩展。由此形成少切换、少组件、少耦合的嵌入式虚拟化架构。

ZVM 系统架构图

围绕内核实时、外设复用与安全隔离,ZVM形成了HyperVHE、双核分治、1V1静态绑核、E4中断保障、Guest OS自恢复、VirtIO内置、SR-IOV复用、TSN融合、GPU多显等关键核心技术,并进一步覆盖故障恢复、确定性网络与图形显示等系统能力。

面向产品化应用,ZVM配套VisualZVM、自动化测试和版本交付体系,形成从开发调试、测试验证到版本交付的全流程工程支撑。目前已面向瑞芯微、飞腾等平台推出发行版,支持Linux、openEuler Embedded、OpenHarmony、Android、Zephyr、FreeRTOS、NuttX等多种Guest OS。

各Hypervisor对比

ZVM与Xen、Xvisor、Jailhouse、BAO Hypervisor相比,在初始化、内核隔离、外设管理、可视化工具、自动化测试等各方面具备全面领先优势。


对比项 Xen Xvisor Jailhouse BAO Hypervisor QNX Hypervisor ZVM
是否依赖Linux完成初始化? 是❌ 否✅ 是❌ 否✅ 否✅ 否✅
是否依赖Linux管理Guest OS生命周期? 是❌ 否✅ 是❌ 否✅ 否✅ 否✅
是否依赖Linux管理I/O? 是❌ 否✅ 是❌ 否✅ 否✅ 否✅
Hypervisor与Guest OS是否共享物理CPU? 是❌ 是❌ 否✅ 否✅ 否✅
(默认)
否✅
(默认)
是否支持静态分区? 否❌ 否❌ 是✅ 是✅ 是✅ 是✅
是否支持外设VirtIO共享? 是✅
(Domain 0方式)
是✅
(内置方式)
否❌ 否❌ 是✅
(内置方式)
是✅
(内置方式)
是否支持外设SR-IOV共享? 是✅
(Domain 0方式)
否❌ 否❌ 否❌ 否❌ 是✅
(内置方式)
是否具备专门的可视化管理工具? 否❌ 否❌ 否❌ 否❌ 是✅ 是✅
是否具备自动化测试系统? 否❌ 否❌ 否❌ 否❌ 是✅ 是✅

测试说明:为确保Benchmark测试结果的准确性,以下测试均在关闭PMU、客户OS心跳监测等可能影响性能表现的功能后进行。

ZVM-RK3588v2.1发行版性能表现——ZVM关键性能指标

序号 指标项 指标值 测试方法
1 上电自启动时间 < 2.2 s MobaXterm_26.3输出自带毫秒级时间戳
2 虚拟化性能损耗 < 2% UnixBench测试集(实测打分体现)
3 VirtIO-Net吞吐量损耗 < 8% iperf3测试集(实测带宽体现)
4 Guest OS时间同步精度 < 25 ns 高精度定时器计数方式(耗时1 ms内)
5 共享内存通信延迟(Zephyr-Zephyr) < 10 us timing_test测试集(基于高精度定时器)
6 共享内存通信带宽 (Linux-Linux) > 1000 Mbps

ZVM-RK3588v2.1发行版性能表现——Guest OS(Zephyr RTOS)实时性指标

序号 指标项 指标值 测试方法
1 上电自启动时间 < 3 s MobaXterm_26.3输出自带毫秒级时间戳
2 最大中断响应延迟 < 9 us irqtest测试集(基于高精度定时器)
3 最大唤醒延迟 < 10 us cyclictest测试集
4 最大抢占延迟 < 3 us task_preempt测试集
5 最大上下文切换延迟 < 3 us task_switch测试集
6 最大完成时间抖动 < 2 us task_jitter测试集

ZVM-RK3588v2.1发行版性能表现——Guest OS(NuttX RTOS)实时性指标

序号 指标项 指标值 测试方法
1 上电自启动时间 < 3 s MobaXterm_26.3输出自带毫秒级时间戳
2 最大中断响应延迟 < 8 us irqtest测试集(基于高精度定时器)
3 最大唤醒延迟 < 10 us cyclictest测试集
4 最大抢占延迟 < 3 us task_preempt测试集
5 最大上下文切换延迟 < 3 us task_switch测试集
6 最大完成时间抖动 < 2 us task_jitter测试集

ZVM-RK3588v2.1发行版性能表现——Guest OS(FreeRTOS)实时性指标

序号 指标项 指标值 测试方法
1 上电自启动时间 < 3 s MobaXterm_26.3输出自带毫秒级时间戳
2 最大中断响应延迟 < 8 us irqtest测试集(基于高精度定时器)
3 最大唤醒延迟 < 10 us cyclictest测试集
4 最大抢占延迟 < 4 us task_preempt测试集
5 最大上下文切换延迟 < 5 us task_switch测试集
6 最大完成时间抖动 < 2 us task_jitter测试集

社区与发行