安卓学习---第三章 Android 启动


0x00 理解分区布局
Android设备中的分区布局:引导区,系统区,数据区,恢复区,缓存区

闪存的分区布局:
1. 引导加载程序,在手机开机时负责对硬件初始化,引导Android内核,并实现可供选择的引导模式
2. 开机闪存,存储设备开机马上能看到闪频的图像,通常是Logo,在某些设备上启动画面位于引导加载程序
3. 引导区,存储了Android的引导映象,包含了一个Linux内核(zImage),和root文件系统RAM磁盘(initrd).
4. 恢复区,存储了一个最小的Android引导映象,该影像提供维护功能,并作为故障保护机制。
5. 系统区,存储设备上被挂在至/syatem的整个Android系统映象,这一映像中包含了Android框架,程序库,系统二进制文件,以及预装的应用。
6. 用户数据区,也称为数据分区,这是设备对应用数据和用户文件(如照片,视频,音频和下载文件)的内部存储分区,在一个已引导的系统上,会被挂在至/data目录
7. 缓存区,用于存放各种存储分区,比如恢复日志,实时下载的更新应用包。在将应用安装在SD卡上的设备中也会包含Dalvik-cache文件夹,其中存储了DalvikVM的缓存。
8. 无线电分区,存储基带系统映象的分区。该分区通常只在具有通话功能的设备上存在。
0x01 理解引导过程
引导加载程序分为 正常启动模式,下载模式 恢复模式 和其他模式。
正常模式 ,加载程序完成对硬件的初始化之后,当它从引导区中将Android内核和Initrd装载到RAM中,最后它将跳进内核,让内核启动的程序。Android内核负责让Android系统在设备上正常运行,初始化内存,输入输出,内存保护,中断处理程序,cpu调度器和设备驱动,做后启动最初的用户控件程序:init。
下载模式 有ODIN模式和fastboot模式fastboot模式 是通过usb与计算机进行连接,然后在支持的协议下,进行重刷NAND分区,重启设备,下载与执行替换的内核映象等

0x02 引导加载程序的锁定和解锁
在加载程序层次上实现一些限制,对引导加载程序尽心锁定,可以防止中断用户修改设备固件。普遍会采用密码学的签名验证机制来组织设备被刷机或执行未经合法的签名的代码
对引导加载程序进行解锁会带来安全隐患,设备丢失或者被盗,设备上的数据很容易被盗取,上传定制的Android引导镜像,或者刷定制的回复镜像,就可以获得对设备所有分区的完全控制权,及数据。 保护方法,当解锁一个加锁的引导加载程序时,会执行恢复出厂设置,从而保证所有终端用户的数据被删除。

×

纯属好玩

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

文章目录
,