SWUpdate:嵌入式Linux设备的软件更新框架
swupdate Software Update for Embedded Systems 项目地址: https://gitcode.com/gh_mirrors/sw/swupdate
项目基础介绍和主要编程语言
SWUpdate 是一个专为嵌入式Linux设备设计的软件更新框架。该项目的主要编程语言包括C、Perl、C++、Lua、Makefile和Shell。SWUpdate旨在为嵌入式系统提供高效、安全的软件更新解决方案,支持本地和OTA(Over-The-Air)更新。
项目核心功能
SWUpdate 提供了丰富的功能,包括:
- 多组件更新:支持更新设备的所有组件,如根文件系统(rootfs)、内核、引导加载程序(bootloader)和微控制器固件。
- 嵌入式媒体安装:支持在嵌入式媒体(如eMMC、SD卡、Raw NAND、UBIFS、NOR和SPI-NOR闪存)上安装更新。
- 分区表支持:支持GPT和MBR分区表。
- 流模式:支持流模式,无需临时复制更新文件。
- 多接口支持:支持多种获取软件的接口,包括本地存储(如USB)、集成Web服务器和REST客户端。
- hawkBit集成:支持与hawkBit远程服务器集成,用于车队更新。
- 自定义处理程序:允许自定义处理程序,用于安装FPGA固件和通过自定义协议更新微控制器固件。
- 增量更新:基于librsync支持增量更新。
- 安全更新:支持更新脚本的预处理和后处理,以及硬件/软件兼容性检查。
- 加密和签名:支持使用OpenSSL、mbedTLS和WolfSSL进行加密和签名验证。
- 资源占用小:设计时考虑了资源占用,适用于资源受限的设备。
项目最近更新的功能
截至2023年12月19日,SWUpdate的最新更新包括:
- 2023年12月19日:发布了19版本,包含对Delta更新的支持,提供轻量级更新功能。
- 2022年11月10日:在ELCE(嵌入式Linux会议)上发布了关于Delta更新的演讲。
- 2022年5月22日:引入了Delta处理程序,用于轻量级更新。
这些更新进一步增强了SWUpdate的功能和安全性,使其成为嵌入式Linux设备软件更新的理想选择。
swupdate Software Update for Embedded Systems 项目地址: https://gitcode.com/gh_mirrors/sw/swupdate