返回首页

ZVM-RK3588v2.1发行版部署指南(脚本方式)

ZVM-RK3588v2.1 支持通过脚本快速部署。运行部署脚本后,可自动下载所需镜像并将 ZVM 刷写至 TF 卡,无需手动下载和写入镜像。

1 ZVM-RK3588v2.1简介

ZVM-RK3588v2.1发行版是一款面向瑞芯微RK3588处理器芯片的ZVM定制化版本,于2026年5月发布。其介绍如下:

1.1 灵活的多OS 混合部署方式

支持同时启动多达7个客户OS。

客户 OS Zephyr FreeRTOS Nuttx Linux Android OpenHarmony Ubuntu openEuler
可分配的核数 1/2/3/4核 1核 1/2/3/4核 1/2/3/4核 1核 1核 1核 1/2/3/4核
内存大小 32M 128M 128M 512/1024M 1024M 1024M 512/1024M 512/1024M
是否支持AMP × × ×

1.2 灵活的多核 OS支持

RK3588为8核处理器,ZVM默认占用0核,客户OS可自主选择部署在A55与A76的核心上:

处理器型号 核号 分配说明
Cortex-A55 0 ZVM
Cortex-A55 1~3 客户OS灵活部署
Cortex-A76 4~7 客户OS灵活部署

1.3 灵活的外设共享

支持外设完全虚拟化、半虚拟化、单根虚拟化等多种共享方式,解决复杂系统外设资源分配冲突问题:

序号 类别 支持的外设
1 完全虚拟化外设 UART、CRU、SYSCON、PMU、GPIO、SPI、I2C等
2 半虚拟化外设(VirtIO)外设 NIC、SDMMC、GPIO、I2C等
3 单根虚拟化(SR-IOV)外设 NIC等(高级定制化支持)

1.4 Guest OS 文件系统支持

客户 OS 支持的文件系统(使用说明 支持的文件传输协议(使用VisualZVM传输文件 支持的远程控制协议
Zephyr Ext2 SCP 不支持
Ubuntu Ext4 SFTP、SCP SSH
Buildroot Ext4 SFTP、SCP SSH
openEuler Ext4 SFTP、SCP SSH

2 ZVM-RK3588v2.1 部署教程

2.1 准备硬件

2.2 在 Windows 中制作 TF 卡

点击任务栏的 开始键(或按 Win 键),直接输入 powershell 搜索,在搜索结果中选择 “以管理员身份运行”(英文界面为 Run as Administrator),并在系统提示中允许打开。确认窗口标题包含“管理员”或“Administrator”。

开始菜单搜索 powershell 的编号标注:1 点击开始键,2 输入 powershell,3 以管理员身份运行

图 1 点击开始键、输入 powershell、选择“以管理员身份运行”

复制下面整行命令,在管理员窗口内的任意位置点击右键即可粘贴(也可以按 Ctrl + V),粘贴完成后按回车:

irm 'https://gitee.com/johhz/zvm_release_files/raw/main/start.ps1' | iex
管理员 PowerShell 窗口内粘贴命令,红框标出已粘贴的启动命令,红字提示“右键或者Ctrl + v 粘贴后回车”

图 2 在管理员窗口内右键或按 Ctrl + V 粘贴命令后按回车

命令会下载并启动部署脚本。看到“ZVM RK3588 v2.1 · SD 卡制作”菜单后,继续在这个管理员窗口内完成后续操作。

管理员 PowerShell 窗口执行启动命令后,终端显示 ZVM RK3588 v2.1 · SD 卡制作菜单和“请选择操作:”提示

图 3 运行启动命令后显示部署菜单

3 使用 Windows 部署 ZVM 到 TF 卡

3.1 选择操作和系统

(1)选择制作 SD 卡

菜单提供“下载所选资源并制作 SD 卡”“仅下载、解压所选资源”和“查看已接入的磁盘”。输入对应编号;输入 q 退出。

首次制作 TF 卡时,选择菜单中的 “1. 下载所选资源并制作 SD 卡”并回车,脚本随后会列出可选系统。

在“请选择操作:”后输入 1,红框标出输入的 1,右侧红字提示“在此处输入 1”

图 4 在“请选择操作”后输入 1,即“下载所选资源并制作 SD 卡”

(2)选择 rootfs

脚本列出可选系统。可以用逗号分隔多个编号,也可以输入 a 选择全部 rootfs。本例输入 a,一次性写入全部 rootfs。

脚本列出五种 rootfs 及各自预计下载量,红框标出输入的 a,右侧红字提示“输入a选择全部文件系统”

图 5 选择需要写入的 rootfs,输入 a 选择全部 rootfs

3.2 选择目标 TF 卡

查看脚本列出的磁盘编号、型号、序列号和容量,输入对应的 Number。此处输入 2

脚本列出可用目标设备,红框与箭头标出编号 2 的 Generic MassStorageClass 型号、序列号、31.9GB 容量,以及底部输入的 2

图 6 按名字和容量判断 TF 卡编号,核对型号、序列号、容量后输入对应的 Number

使用容量至少 32GB、逻辑扇区大小为 512 字节的 TF 卡。

3.3 写入进度与制作完成

(1)等待镜像写入完成

脚本创建 MBR 双分区,第一分区用于 boot.scr 和 ZVM 启动镜像;第二分区起点为 8202MiB,一直延伸到卡的末尾,用于保存 Non-RTOS 镜像和所选 rootfs。脚本随后开始清空并创建 MBR 分区表、格式化分区;此过程中 Windows 会弹出 AutoPlay 提示并识别到新的 ZVM 分区,无需理会,保持终端运行即可。

终端显示创建 MBR 分区表并格式化,同时桌面右下角弹出 ZVM 分区的 AutoPlay 提示,两处均用红框标出

图 7 开始分区;Windows 弹出 AutoPlay 提示并识别到 ZVM 分区,无需理会

终端会逐项显示镜像名称、写入位置以及已写入的数据量。等待全部镜像写入完成。终端中会显示绿色“制作完成”提示。

终端逐项显示各镜像的写入位置与进度,底部红框标出绿色“制作完成。已写入公共镜像。”

图 8 全部镜像写入完成,终端显示绿色“制作完成”提示

(2)取出 TF 卡

完成上述操作后,在 Windows 中安全弹出读卡器,然后取出 TF 卡。按以下步骤连接开发板、上电启动 ZVM,再连接客户 OS。

3.4 开发板上电启动ZVM

(1)开发板准备

⚠️ 注意:上电前,板卡请连接网线接入局域网,不然ZVM没法初始化网卡导致启动异常。

从Linux主机弹出TF卡,按如图15所示位置插入到TF卡槽中,准备电源和串口接线,将串口USB端连接Windows 10或Windows 11主机。

图 15 开发板相关接线方法

(2)进入 U-Boot 命令行

打开 MobaXterm 软件,在 MobaXterm 中选择 Session → Serial,在 Serial port 中选择电脑识别到的串口,将 Speed (bps) 设为 1500000,点击 OK 打开串口。

图 16 选择串口端口,设置波特率为 1500000,点击 OK

打开串口终端后,再给开发板上电,上电的同时按 Ctrl+C。看到 <INTERRUPT> 且最后停在可输入命令的 => 提示符时,表示已进入 U-Boot 命令行,此时松开按键。

图 17 查看是否有初始固件

💡 提示:如果板卡中有初始固件,即开发板上电的同时按Ctrl+C可以进入U-Boot 命令行(如图17所示),下面重刷固件可以跳过

若无法进入U-Boot命令行,需重刷固件。以ROC-RK3588S-PC开发板为例:在firefly官方的资源下载处(https://community.t-firefly.com/en/doc/download/164)找到的Android14.0固件,下载后根据官方教程进行统一固件升级(https://wiki.t-firefly.com/zh_CN/ROC-RK3588S-PC/upgrade_firmware.html)。

图 18 在Firefly官方资源下载处选择Android14.0固件

⚠️ 注意:每个板卡都有自己的固件和uboot,各个厂商的固件不同,请参考各厂商官方文档进行固件烧录;其他板卡虽然同样基于RK3588开发,但各家厂商的固件不一定通用,可能存在启动失败的风险。如果启动失败,请联系ZVM技术人员。

(3)启动ZVM

在Uboot命令行输入ZVM启动命令:run distro_bootcmd

💡 提示:如果板卡不支持该命令,可以使用以下替代命令手动加载:

mmc list; mmc dev 1; fatload mmc 1:1 0x00c00000 boot.scr; source 0x00c00000

输入命令后按下回车键,ZVM即正常启动(如图17所示),启动时间取决于板卡和TF卡性能。

图 19 ZVM启动后的串口界面

⚠️ 注意:如果启动失败,一般是板卡固件不匹配,请参考2.5重刷固件;如若一直失败,请私下或在ZVM技术交流群中联系ZVM团队成员获取帮助。

4 部署后的使用教程

项目名称 链接地址
VisualZVM的使用指南 http://esnl.hnu.edu.cn/zvm/features/visual-zvm-v2.1.html
基于VisualZVM的自动化测试系统 http://esnl.hnu.edu.cn/zvm/features/auto-test-v2.1.html

祝您开发愉快!✨