天天看点

Android OTA基本知识

1 ramdisk的加载选择

如果命令行中包含skip_initramfs,那么加载system.img的ramdisk而不是boot.img的recovery ramdisk

BoardConfig.mk

BOARD_KERNEL_CMDLINE := ... skip_initramfs ...

Android 8.0之后没有独立的recovery.img,boot.img根据cmdline参数来决定mount哪个ramdisk。

如果有skip_initramfs参数,那么mount打包在system.img中的normal ramdisk(CONFIG_BLK_DEV_INITRD);否则mount打包在boot.img中的recovery ramdisk。

参数BOARD_BUILD_SYSTEM_ROOT_IMAGE的配置决定是将normal ramdisk打包到boot.img中还是打包到system.img中。

打包到boot.img中:

BOARD_BUILD_SYSTEM_ROOT_IMAGE := false

打包到system.img(system-as-root)中:

BOARD_BUILD_SYSTEM_ROOT_IMAGE := true

2 URLs

Android A/B System OTA分析(四)系统的启动和升级

https://blog.csdn.net/guyongqiangx/article/details/72604355?locationNum=6&fps=1

3 Abbreviations

GA: MTK General Availability,软件的通用版本

VPD:MTK Vital Product Data,vpd分区,保存MAC地址和序列号等

继续阅读