[RK-Linux] Linux A/B System详解

AI摘要

本文详细介绍了Linux A/B System的配置项、分区表、启动模式和验证方法,阐述了其在系统升级和分区引导设置中的应用,以及SPL对A/B系统的支持。A/B System通过双引导slot提供安全升级和故障恢复,但也增加了固件占用。

所谓的 A/B System 即把系统固件分为两份,分别称为 slot-a , slot-b 。系统可以从任意一个 slot 启动,当一个 slot 启动失败后还可以从另一个启动,在 Normal 模式下直接升级系统,无需进入系统升级模式,只需重启系统即可进入升级过的系统。

A/B System 由于有两个引导 slot,所以具有以下优点:

  1. 升级无需重启进入升级模式,即机器可以在当前系统上直接进行升级。
  2. 防止由于升级失败导致机器变砖,如果升级失败,机器可以回到当前版本。
  3. 当前系统如果由于一些误操作被破坏掉,系统会自动切换到另外一个 slot 上。

缺点:

  1. A/B System 有两个 slot,所以会增加 flash 上系统固件的占用率。

一、配置项

U-Boot 需要依赖 LIBAVB ,如下:

# A/B System依赖的库
CONFIG_AVB_LIBAVB=y
CONFIG_AVB_LIBAVB_AB=y
嵌入式Linux开机自启实战:System V init机制解析与RK3588应用配置 在嵌入式Linux系统开发中,服务管理是确保设备稳定运行的核心基础。System V init作为经典的初始化系统,通过串行执行/etc/init.d目录下的脚本来控制系统启动流程,其原理在于利用S/K前缀及两位数字排序号来定义服务的启动与停止顺序。这套机制在资源受限或定制化的嵌入式环境中,因其简单、可控和低开销,依然具有重要的技术价值,尤其适用于由Buildroot构建的轻量级系统。在实际应用场景中,无论是需要替换默认桌面的Qt图形应用,还是像WiFi自动连接这样的后台守护进程,都可以通过编写符合LSB规 阅读详情

相关推荐

RK3568/RK3588 Android 12单独编译内核与快速烧录实践

在嵌入式Android开发中,内核编译与镜像烧录是BSP工程师高频操作。面向RK3568/RK3588的Android 12 SDK,全量编译一次往往需要数十分钟,极大拖慢调试节奏。单独编译内核则能通过增量构建生成boot.img,结合fastboot命令快速烧录,将迭代缩短到几分钟。理解boot分区结构、设备树dtb打包机制以及内核与用户空间的解耦原理,是高效调试的基础。该流程适用于摄像头传感器适配、屏幕调试、驱动移植等典型场景。系统拆解单独编译内核的三种实现路径、烧录验证方法以及常见坑点,帮助开发者少走

weixin_33906657的博客 261

手把手教你为TB-RK3576D0编译Buildroot Linux系统(RK3576 SDK实战)

本文详细介绍了如何为TB-RK3576D0开发板编译Buildroot Linux系统的完整流程,包括环境准备、SDK获取、Buildroot配置、内核调整、系统编译与烧录等关键步骤。针对瑞芯微RK3576处理器的特性,提供了实用的优化建议和常见问题解决方案,帮助开发者快速上手嵌入式Linux系统开发。

weixin_30897233的博客 132

RK3568边缘网关开发实战:五大常见坑与调试经验详解

在嵌入式Linux开发中,设备树(Device Tree)是连接硬件与操作系统的关键桥梁,它以树状结构描述内存、GPIO、I2C、网络PHY等硬件资源,让内核能精准驱动外设。正确配置设备树是嵌入式系统稳定运行的基石,尤其在边缘计算网关、物联网关等场景中,设备树配置错误往往导致网口协商失败、摄像头黑屏等棘手问题。针对RK3568等主流国产SoC平台,实际项目里常遇到设备树选择困难、PHY时钟与复位时序异常、MIPI摄像头调试链路复杂、构建环境依赖冲突等挑战。基于RK3568边缘网关项目的真实开发经验,梳理出从

weixin_34060299的博客 489

RK3588平台开发系列讲解(系统篇)A/B System的介绍

📢本篇将介绍RK3588平台的A/B System

内核笔记 3324

深度解析RK3588平台开发之系统篇:探讨A/B System的实现与优势

A/B System,又称为双系统或双分区系统,是一种用于实现系统固件更新的技术。它通过在设备上同时保留两个系统分区(A和B),使得系统能够在运行时切换到另一个分区,从而实现平滑的固件更新过程。这种设计可以显著减少因固件更新导致的系统中断和风险。通过本文,我们深入研究了A/B System在RK3588平台上的实现与优势。作为现代嵌入式系统的一项关键技术,A/B System通过无缝固件更新、系统回滚能力等特点,极大地提高了系统的可用性和稳定性。希望本文对于正在进行RK3588平台开发的开发者有所启发。

一直在水些技术小文 1294

RK3588平台开发系列:A/B System介绍与Android实现

通过使用A/B System,Android设备可以更安全地进行系统更新,并在更新失败时自动回滚到备份系统,,并在更新失败时自动回滚到备份系统,保证用户的使用体验。如果更新后的系统运行正常,A/B System会将下一次的启动引导到更新后的系统。A/B System是一种用于系统更新和回滚的机制,它允许Android设备在进行系统更新时保留一个完整的备份系统。当进行系统更新时,更新包会被下载并验证,然后被应用到未使用的Slot中(如果当前使用的是Slot A,则更新会应用到Slot B中)。

2301_79330513的博客 523

RK 系统安全(System-Verity / System-Encryption)原理与落地实战

摘要:本文详细解析了Rockchip Linux SDK中的系统安全方案,重点探讨System-Verity和System-Encryption的实现原理与工程实践。System-Verity通过dm-verity确保rootfs完整性,System-Encryption通过dm-crypt实现数据保密性。文章从概念定位、架构设计到具体实现,完整阐述了PC侧镜像处理(生成Hash-Map/加密容器)和Ramdisk中/init脚本的校验解密流程,最终通过vroot映射和switch_root完成安全系统切换

Interview_TC的博客 1195

RK3568平台开发系列讲解(环境篇)RK3568 SDK 的编译

本 SDK 开发环境是在 Ubuntu 系统上开发测试。我们推荐使用 Ubuntu 18.04 的系统进行编译。其他的Linux 版本可能需要对软件包做相应调整。除了系统要求外,还有其他软硬件方面的要求。 硬件要求:64 位系统,硬盘空间大于 40G。如果您进行多个构建,将需要更大的硬盘空间。 软件要求:Ubuntu 18.04 系统

内核笔记 5995

RK3568平台开发系列:深入理解Linux文件系统和Android

本文对RK3568平台开发中的Linux文件系统和Android进行了介绍,并提供了相关的源代码示例。Linux文件系统是Linux操作系统中用于组织和管理文件的机制,同时Android文件系统是在Linux文件系统基础上添加了一些特定的目录和文件。您可以使用Linux命令来操作文件系统,如列出目录内容、创建目录、复制文件、移动文件、删除文件和修改文件权限等。和Android有所帮助。Android操作系统是基于Linux内核的移动操作系统,它在Linux文件系统的基础上添加了一些特定的目录和文件。

. 395

Linux下处理RK平台SecureBoot签名失败的工具指南

本文还有配套的精品资源,点击获取 简介:在Linux系统中,当使用RK(Rockchip)平台的设备时,可能会遇到因system分区过大导致SecureBoot签名失败的问题,影响设备安全启动。为解决这一问题,本文介绍了使用"SecureBootConsole_v1.89"工具来调整分区大小、修复签名以及管理证书等方法。这些步骤涉及依赖库安装、设备连接、Bootloader...

weixin_42327217的博客 1397

【高级-RAG-优化方法】

本文介绍了两种优化RAG(检索增强生成)系统的高级方法。第一部分介绍KnowFlow项目,它采用父子分块技术,将文档分为父分块(800-1500字符)和子分块(200-400字符),通过精确匹配子分块再返回父分块内容来保证搜索精确性和上下文完整性。第二部分探讨Milvus的多种增强技术,包括查询增强(如假设问题生成、回溯提示)、索引增强(自动合并块、分层索引)、检索器增强(句子窗口检索、元数据过滤)、生成器增强(提示压缩、块排序)以及管道增强(自我反省、代理查询路由)。这些方法共同提升了RAG系统的检索效率

weixin_48585108的博客 958

Unity URP炫彩干涉效果:从薄膜干涉原理到Shader Graph实现

薄膜干涉是一种常见的光学现象,指光在透明薄膜上下表面反射后产生干涉,形成彩虹色条纹。其原理基于光程差导致的相长与相消干涉,不同波长的光被选择性增强或削弱。在计算机图形学中,这一物理现象被抽象为高效的数学模型,通过Shader编程实现动态色彩变化,为游戏和实时渲染带来独特的视觉表现力。技术实现上,常采用正弦函数结合噪声纹理来模拟色彩循环,利用法线与视角点积作为基础变量,加入噪声扰动模拟厚度不均,实现随视角变化的虹彩效果。在Unity URP渲染管线中,可通过Shader Graph可视化工具或手写HLSL代码

weixin_34026997的博客 292

lstm如何输入多维序列_深度学习也可以做时间序列异常诊断

最近在看的一篇论文里,用到了GRU、VAE等技术来做多维时间序列异常诊断。那么今天首先来聊一聊深度学习的基础知识,然后简单说一下论文。以下基础知识部分的内容,主要来源于李宏毅老师的课程。有兴趣的可以去看李老师的课程哦https://www.bilibili.com/video/BV1JE411g7XF?p=1 1、GRU(Gate Recurrent Unit):GRU是循环神经网络(Recurr...

weixin_30899789的博客 2833

从Power到HO:一文搞懂主流脑图谱在DPABI里怎么选,让你的rs-fMRI分析更精准

本文深入解析了rs-fMRI分析中主流脑图谱(如Power、HO、AAL等)在DPABI中的科学选择策略,帮助研究者根据不同的神经科学研究目标优化分析流程。从解剖学图谱到功能连接图谱的特性对比,到DPABI实操中的多图谱分析工作流,提供了全面的方法论指导,助力提升静息态功能磁共振成像(rs-fMRI)研究的精准度和可重复性。

weixin_30654583的博客 403

用LT1166+MOS管打造实验室级恒流源:闭环反馈与推挽驱动的深度调优

本文详细介绍了基于LT1166电流模式控制器与MOS管推挽架构的实验室级恒流源设计方法。通过闭环反馈调优和动态响应优化,实现带宽达100kHz、纹波低于0.1%的高性能恒流输出,适用于精密仪器校准和半导体测试等场景。重点解析了系统架构设计、MOS管选型策略以及频率响应测试等关键技术要点。

weixin_29290379的博客 202

OSGEarth 基于鼠标位置缩放

说明 osgearth 原有漫游器EarthManipulator 不支持此功能,所以需要修改此漫游器代码,其中主要原理就是在缩放的同时也要改变当前漫游器中心焦点的位置,从而保持鼠标指定点的位置缩放是不改变。 核心代码修改部分 EarthManipulator 的头文件zoom方法添加参数view /** * Zoom the camera using delt...

Rsoftwaretest的专栏 3781

学Simulink——四开关 Buck‑Boost(FSBB)变换器的无缝模式切换仿真

本文详细介绍了使用Simulink实现四开关Buck-Boost(FSBB)变换器无缝模式切换的仿真方法。FSBB变换器因其输入输出同极性、单电感和双向能量流特性,广泛应用于光伏储能、USB-PD和车载电源等场景。文章重点解决了模式切换中的直通风险和占空比跳变问题,通过统一电压PI控制、Stateflow模式仲裁和200ns死区设计,实现了Buck(26V→24V)、Pass-Through(24V±1V)和Boost(22V)三种工作模式的无缝过渡。仿真结果显示输出电压稳定在12V±0.15V,切换过程无

amy_mhd的博客 65

【网络安全】AntSword蚁剑新手快速入门(附实战案例)

蚁剑(AntSword)是一款开源的跨平台WebShell管理工具,它主要面向于合法授权的渗透测试安全人员以及进行常规操作的网站管理员。蚁剑的特点主要有如下几点:1.支持多平台。包括macOS、Linux 32位、Linux 64位、Linux armv7l、Linux arm64、Windows 32位、Windows 64位。2.完善的文档。中国蚁剑文档地址。3.多项功能。文件管理功能、虚拟终端功能、数据库管理功能。4.内置代理功能。

等风来 1万+

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

上一篇: RK356x U-Boot研究所(开发篇)5.2 A/B系统的使用
下一篇: [RK-Linux] updateEngine工具使用以及代码分析
嵌入式逍遥
嵌入式逍遥 领域专家: 嵌入式与硬件开发技术领域 领域专家: 嵌入式与硬件开发技术领域
博客等级 码龄9年 7万+粉丝 237原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嵌入式逍遥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值