1.Android 13 lineageOS-20.0 编译并刷入小米8
2.Android 启动加载器分析 —— Aboot
3.linux fastboot工具怎么用
4.安卓fastboot原理
Android 13 lineageOS-20.0 编译并刷入小米8
本文记录了一次从下载、命令命令编译到刷入Android lineageOS-.0 系统在小米8上的源码源码过程。首先,下载从官方源码编译文档出发,命令命令下载并编译源码,源码源码过程中遇到了找不到特定配置和内核的下载100个源码合集问题,通过下载特定的命令命令配置文件和内核文件解决。配置文件下载后生成了两个目录,源码源码用于后续步骤。下载
下载并更新内核后,命令命令需要提取BLOB文件。源码源码这一过程包括下载对应设备的下载ota安装包,将其复制到指定目录下,命令命令然后在源码根目录执行相关命令提取BLOB。源码源码ipp引流源码接着,下载下载硬件相关的文件以确保编译顺利进行。
为了进行编译,需要解锁小米手机。解锁后,重新启动手机,并通过USB调试连接到电脑。进入fastboot模式后,使用recovery刷入系统,此过程需在电脑上执行特定命令,待显示完成提示后,选择重启系统。
总结整个流程,源码处理流程包括下载源码、编译配置、内核文件、提取BLOB、下载硬件文件、解锁手机、进入fastboot模式刷入系统,直至成功重启。这一系列操作展示了从零开始构建自定义Android系统的全过程,展示了个人对技术的探索精神和对未知的渴望。通过这次实践,不仅加深了对Android系统编译的理解,也为后续可能的最新openwrt源码自定义系统定制积累了宝贵经验。
Android 启动加载器分析 —— Aboot
Android 启动流程在高通平台上的分析主要围绕 Aboot 展开。Aboot 是一个基于 LittleKernel (lk) 的设备相关应用程序,其源码可以在 Google 或 Code Aurora Forum 找到。lk 是一个小型的对称多处理(SMP)操作系统内核,Aboot 则在其基础上构建。
在 ddbeaccabf4eb 版本的CAF Aboot中,关键代码分布在app/aboot/目录,核心文件为aboot.c 和 fastboot.c,包含硬件相关的辅助代码。不同SoC和设备驱动分布在platform/、target/和dev/中,架构相关代码在arch/,而实际的VINS源码笔记lk内核代码在kernel/。
启动流程中,lk加载并初始化后,Aboot作为应用程序启动,aboot.c中的代码注册Aboot并设置内存分区。它会根据设备类型检查储存设备,初始化屏幕和序列号,然后决定进入正常启动Linux或Recovery模式。
正常启动时,Aboot从boot或recovery分区加载内核和ramdisk,通过header确定镜像内容。如果设备未解锁,还需验证内核。最后调用boot_linux准备启动,根据设备信息调整参数并管理硬件,以或位模式进入内核。
对于fastboot模式,Aboot会先注册命令并初始化fastboot,如USB接口设置。fastboot_register函数负责命令注册,而target_fastboot_init针对特定设备进行硬件初始化。在USB接口配置后,Aboot进入fastboot模式,处理相关事件并接收命令。
总结来说,本文概述了年前基于lk内核的Aboot在Android启动加载器中的作用,但未深入探讨针对特定平台和架构的细节。希望对理解Android启动加载器有所帮助。
linux fastboot工具怎么用
boot是Android快速升级的一种方法,Fastboot的协议fastboot_protocol.txt在源码目录./bootable/bootloader/legacy下可以找到。
Fastboot客户端是作为Android系统编译的一部分,编译后位于./out/host/Linux-x/bin/fastboot目录下。
Fastboot命令实例:sudo
fastboot
flash
kernel
path-to-kernel/uImage
烧写rootfs类似:sudo
fastboot
flash
system
path-to-system/system
安卓fastboot原理
安卓刷机大概就两种方法:
一是recovery方法,就是我们平时将update.zip入到SD卡,然后alt-s的方法,这种方法是调用了recovery的方法将各种img或文件进行复制等操作。想了解recovery的工作原理吗?我也没找到好的资料,就在这看了看recovery的一些源码
二是fastboot方法,这个方法其实是比较酷的方法,说白点,fastboot就是将已有的各分区映象文件(img文件,意义上类似我们对光盘做的映象文件)直接覆盖写到指定分区中,有点暴力,也有点类似我们平时操作系统的Ghost还原。
这两种方法哪种更好,这就不好比高低了,总的来说:
Recovery方法更简单,只需要傻瓜式的将update.zip放到SD卡的要目录下,然后进入Recovery模式alt-s就可以了,但和任何傻瓜式东西一样,他的灵活度就很小了,而且出错了也都不知道如何解决。一般来说做Rom的高手为了保证Rom的可靠性,在安装程序中都会对一些安装环境进行一些确定,而各位的手机环境又是千变万化的,Rom高手也很难考虑周全,另外,Recovery程序本身也有一些环境验证。
fastboot方法更灵活,功能也更强大,fastboot方法不需要依赖于recovery,甚至linux底层刷坏了recovery模式都进不了的情况下也可以通过fastboot方工刷回来。fastboot模式其实是调用spl进行刷机的,所以如果刷spl坏了,fastboot模式应该也进不了,也就是砖了。fastboot方法需要各位电脑上有fastboot程序,同时手机要进入fastboot模式才可以操作,关于这些知识,请自己搜索