失效链接处理 |
Rockchip Recovery OTA用户操作指南V1.00 PDF 下载
本站整理下载:
相关截图:
主要内容:
1.1 Recovery 模式简介
Recovery 模式指的是一种可以对安卓机内部的数据或系统进行修改的模式,(类似于 windows pe 或
DOS)。在这个模式下我们可以刷入新的安卓系统,或者对已有的系统进行备份或升级,也可以在此恢复出
厂设置。
1.2 Recovery 模式在框架层的位置
Android 启动后,会先运行 bootloader。Bootloader 会根据某些判定条件决定是否进入 recovery 模
式。Recovery 模式会装载 recovery 分区,该分区包含 recovery.img。Recovery.img 包含了标准内核(和
boot.img 中的内核相同)以及 recovery 根文件系统。
Android recovery 三个部分两个接口,recovery 的工作需要整个软件平台的配合,从架构角度看,有
三个部分:
1. Main System: 用 boot.img 启动的 Linux 系统,Android 的正常工作模式。
2. Recovery:用 recovery.img 启动的 Linux 系统,主要是运行 recovery 程序。
3. Bootloader:除了加载、启动系统,还会通过读取 flash 的 MISC 分区获得来自 Main System 和
Recovery 的消息,并以此决定做何种操作。
两个通信接口:
1. /cache/recovery/:command、log、intent
2. BCB(Bootloader Control Block):misc 分区
我们先来看以上三部分是如何通信的,先看下图:
Copyright 2016 @Fuzhou Rockchip Electronics Co., Ltd. 1-1
Rockchip Recovery 用户操作指南 1 Recovery 简 介
Main System 如何进入 Recovery 模式:当我们在 Main System 使用 update.zip 包进行升级时,
系统会重启并进入 recovery 模式。在系统重启前,我们可以看到 Main System 定会向 recovery 域写入
boot-recovery(粉红色线),用来告知 bootloader 重启后进入 Rcovery 模式。这一步是必须的,至于
Main System 是否会向 recovery 域写入值我们在源码中不能肯定这一点。即便如此,重启进入 Recovery
模式后,Bootloader 会从/cache/recovery/command 中读取值并放入到 BCB 的 recovery 域。而 Main
System 在重启之前肯定会向/cache/recovery/command 中写入 Recovery 将要进行的操作命令。
下图是 Main System 进入 Recovery 模式调用接口的流程图:
1.installPackage: RecoverySystem 的接口,完成升级包路径转换,并调用 bootCommand。
2.bootCommand:RecoverySystem 的接口,将命令写入/cache/recovery/command,并调用
pm.reboot。
3.Pm.reboot:PowerManager 的接口,重启并进入 Recovery 模式。
|