Linux启动部分
Recovery系统启动后,执行到init.rc
中的recovery
服务则进入recovery步骤:
service recovery /sbin/recovery
console
这里的init.rc
对应于源码包中的device/rockchip/rksdk/recovery/etc/init.rc
。最终启动的recovery服务相关代码位于bootable/recovery/recovery.cpp
内。
通过函数get_args
读取文件/cache/recovery/command
的内容,根据前边的描述该文件内容如下:
--wipe-data
--locale=en_US
则分别调用到函数do_wipe_data()进行数据清理操作,然后调用finish_recovery
擦除BCB(Bootloader Control Block),最后再调用android_reboot
重启系统。