能力再次提升! 迅为RK3588/RK3568开发板&核心板新增定制分区镜像
迅为RK3568和RK3588开发板已支持RK传统分区和定制分区两种镜像,定制分区镜像和RK传统分区镜像指的是不同分区结构的镜像,接下来将会对上述两种分区方式进行讲解,并进行对比,分析各自的优点和适用场景。
RK传统分区镜像介绍
RK传统分区是瑞芯微标准的分区镜像方案。这种分区方式为系统提供了基础的启动管理和固件更新支持,但也有其局限性,可以根据提供的parameter.txt分区文件,确定RK传统分区镜像每个分区的大小和起始地址,整理完成的分区表内容如下所示:
然后对RK传统分区镜像分区的特性进行描述:
■ 特性1. 固定设备树绑定
每个RK传统分区镜像与特定设备的设备树(dtb)紧密关联。系统启动时会直接加载与该设备对应的设备树。如果硬件发生变化(如适配自己的底板、更换屏幕等),都需要重新构建新的镜像。
由于这种紧耦合性,每种型号的设备需要单独的镜像(例如迅为提供了每种屏幕单独的镜像),无法实现多设备共享一个镜像。
■ 特性2. 启动速度略快
RK传统分区采用简单高效的加载机制,在启动时直接加载内核和设备树,减少了启动步骤,因此启动速度相对较快。
■ 特性3. 支持基础的 OTA 更新
RK传统分区支持基本的OTA更新,可以通过远程、TF卡、U盘等方式进行系统升级。
■ 特性4. 存储利用率较低
RK传统分区的分区设计较为传统,存在一些不必要的冗余部分,导致存储空间利用率较低。
定制分区镜像介绍
定制分区镜像是另一种镜像实现方式,主要用于解决多设备系统的适配问题。与RK传统分区相比,定制分区镜像提供了更强的灵活性、扩展性和维护性,特别适用于设备功能多样化的嵌入式系统,分区表如下所示:
■ 特性1. 多设备共享与动态适配
定制分区镜像可以适用于多个使用相同型号处理器的设备,不再需要为每个设备单独构建镜像。通过集成多个设备树 (dtb) 文件,一个镜像就能覆盖多个板卡,例如项目1和项目2都使用了iTOP-RK3568核心板,但是底板硬件不同,这时候并不需要整理两份不同的SDK,只需加载不同的设备树即可。
■ 特性2. 支持设备树插件与模块化更新
支持.dtbo插件的加载,可以在运行时动态添加或更新设备的硬件配置(修改配置文件后重启即可生效),而无需重新烧写镜像。除了设备树之外,还可以在不烧写镜像的情况下更新内核、配置文件等。
■ 特性3. 分区简化与高效存储
定制分区镜像使用了简化之后的分区方案,只包含必要的uboot、定制分区镜像和rootfs分区。通过减少冗余分区,如mis、recovery和backup分区,提高了存储空间的利用率。
■ 特性4. 启动时间的平衡
与RK传统分区的直接加载方式相比,定制分区镜像的启动时间稍慢,因为它在启动时需要加载相应设备树和overlay。然而,这种适应性换取了更高的灵活性和多设备支持。
■ 特性5.使用场景与适用性
需要频繁更新的设备:适合工业自动化和物联网系统,这些系统需要支持频繁的内核或驱动更新。
减少维护成本:通过动态切换和在线更新,减少了系统维护的工作量和停机时间
RK传统分区和定制分区镜像对比
根据上面两个小节的内容,可以将RK传统分区和定制分区镜像的特性进行一下对比,整理好的表格如下所示:
■RK传统分区镜像特性概述:
(1)固定设备树绑定:每个镜像只能适配特定的硬件配置,无法适应硬件的动态变化。
(2)启动速度快:直接加载设备树和内核,减少了启动过程中的延迟。
(3)基础 OTA 更新:支持远程更新,但不支持增量更新,更新需重构镜像。
(4)存储效率低:由于设计传统,分区存在冗余,无法高效利用存储空间。
■定制分区镜像特性概述:
(1)多设备共享与动态适配:一个镜像即可覆盖多个硬件型号。
(2)设备树插件与模块化更新:支持动态添加或更新设备树和配置文件,无需重烧镜像。
(3)分区简化与高效存储:通过减少冗余分区和动态扩展 **rootfs**,提高存储效率。
(4)启动时间的平衡:启动时需加载设备树和overlay,导致启动速度略慢,但换取了更高的灵活性。
(5)适用场景广泛:特别适合需要频繁更新的工业自动化、物联网系统。
总结与选择建议
■ RK传统分区镜像适合启动速度要求高且硬件配置固定的系统,如工业设备和消费电子产品。
■ 定制分区镜像更适合多设备环境和需要频繁更新的系统,如物联网和智能设备,减少了镜像管理和维护的复杂性。
通过上述对比,开发者可以根据项目需求选择合适的镜像管理方式,从而确保系统的高效运行与便捷维护。