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
重啟系統。