手机的启动和刷机

本文详细解析了手机刷机的理论基础,强调了现代手机具备的USBLoader特性使得理论上手机无法因刷机而损坏。文章深入介绍了android手机启动的六个阶段,并重点分析了PowerONandBootROMcodeexecution阶段的工作原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

理论上说,手机不存在刷坏的可能性!

 

因为现在手机都有USB Loader.

 

android手机启动分六个阶段:

 

1.Power ON and Boot ROM code execution

2.The Boot Loader

3.Linux kernel

4.The init process

5.Zygote and Dalvik

6.The system server

 

(一)Power ON and Boot ROM code execution

 

上电后,手机要等待电压稳定后,才开始BOOT ROM里的代码。手机都有自己的智能电源监测模块。电压稳定后会给CPU发一个硬件脉冲。从而硬启动CPU。

 

这个时候internal RAM是可用的,这种RAM是上电即可用,不像External RAM (由1st stage loader检测和初始化) 这里涉及到硬件知识了,SRAM和DRAM的区别。

 

这段Boot ROM代码是简单的,而且是“Hardwired”在手机的CPU ASIC里面了,所以,我说手机理论上是刷不坏的。除非刷机导致了硬件的损伤。

 

这个时候,手机将决定使用何种 “first stage boot loader”,这个决定也是根据硬件的状态决定的,程序会去检测专门的硬件寄存器,这涉及到硬件的知识,比如你的计算机是否通过USB电缆插在手机上,将决定CPU内的一个硬件寄存器的值。

一般手机都有一个固定的“boot media sequence”, 通过判断何种媒体可用,然后从优先去而且可用的媒体中取回boot loader代码。

 

决定后,BOOT ROM代码将把Bootloader代码 load到internal RAM中,load完后,BOOT ROM则完成历史使命,使用一个“JUMP and Execution”指令,把控制权交给internal RAM中的代码。

 

一般的手机厂家都要提供一个Flasher工具,这个工具就是BootROM 里的代码交互,把Flasher的部分代码下载到Internal RAM中。

缺省的启动顺序,USB是由于内部SYSTEM ROM的。如果启动时没检查到USB连接到了电脑,则是走的正常的启动流程。所以说只要硬件没坏,我们想怎么刷机,就怎么刷机,任何砖头都是可以恢复回来的。只要我们写一段刷机代码通过USB下载到Internal  RAM里面运行即可

 

(二)The Bootloader

 

 

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值