2018年11月

pstore/ramoops代码分析

pstore就是persistent store,是一种内存文件系统,提供了一种机制用来存储一些有用的信息,最初是给带non-volatile storage的设备使用,用来debug system crash,存储的是kernel panic/oops日志,后面引入了ramoops作为backend,加入了存储kernel console log,Android平台又加...阅读全文

Android平台OEM解锁分析

一般安卓fastboot刷机需要unlock device,也叫unlock bootloader,我想多半和lock/unlock在bootloader中实现有关,ok,下面就来看下相关代码,参考高通平台P LK。device_info中记录了是否解锁,有两个:is_unlocked, is_unlock_critical:static device_info devi...阅读全文

高通平台A/B系统刷机说明

A/B系统是Google推的一种OTA升级方法,就是为了方便,简单说就是多了个备份区,升级时写备份区然后尝试从备份区启动,如果启动ok,就把备份区作为主区,遥想当年ROS平台bootloader就有这么个东东。这里不关心OTA流程,我们关心的是A/B系统分区选择相关,A/B下刷机要不要带_a, _b。ok,先让我们看下官方对分区选择说明:A/B system update...阅读全文

分析解决安卓启动一直卡在加密界面的问题

Android P刷机后第一次启动停在了加密界面,提示如下:Wait while your phone is being encrypted.这里是data分区在加密,system/vold/cryptsfs.cpp负责,先看看logcat过滤Cryptfs:01-28 04:50:11.003 D/Cryptfs ( 497): Just asked init to ...阅读全文