《bootloader三种启动模式》由会员分享,可在线阅读,更多相关《bootloader三种启动模式(9页珍藏版)》请在金锄头文库上搜索。
1、bootloader 三种启动模式HTC手机中用的 bootloader称为 HBoot,不知道是不是 HTC Bootloader 之意,从官网的源码看这个 bootloader不象是 u-boot的改版。(当然这个也不太确定 HBOOT就是完全使用与Android相同的源码)http:/android.git.kernel.org/?p=platform/bootable/bootloader/legacy.git;a=tree;f=include;hb=HEAD在 Android 的刷机时,经常会听到 SPL,Recovery 模式,和 fastboot 模式。这些术语是什么含意呢?如果
2、在嵌入式 Linux开发时使用过 u-boot,对这种几种模式还是比较好理解。1.SPLSPL的全称是 Second Program Loader,是比较准确意思是第二阶段程序装载器,在 Linux下没有这么奇怪的名字,好象是 HTC从 Windows Mobile手机引进来,为了统一名称而采用的名字。WM下,第一阶段是称为 IPL,它的全称是 Initial Program Loader,它是硬件上电后启动第一个程序。负责最初硬件(Nand Flash,CPU,SDRAM)的初始化。然后再把 SPL程序装到RAM当中。SPL可以做更多复杂的硬件初始化,并且往往也支持很多复杂命令,比如网络,U
3、SB 下载。SPL再将操作系统装入到 RAM中运行。即 IPL SPL OS .到了 HTC生产 Android后,仍然采用这样的名字,以统一起来.设计成这样复杂的结构原因有很多,专业嵌入式 Linux开发人员一般都要明白为什么这样做,主要原因是设计比较灵活。在 Linux下,一般的 bootloader是把两阶段工作一起做了,象 u-boot就是如此。在复杂一点的 CPU,分成独立两阶段的 bootloader,象 s3c6410 的 SD卡启动,首先是由 SD卡引导区中中的 IROM启动,然后它再 SD卡上 FAT分区的 u-boot的程序。这就是一个明显两阶段启动。 因此,简单的说 ,S
4、PL 就是 Android的 bootloader之意。HTC 里就是指 HBOOT.2.下载模式正常情况下,SPL 将启动 Android操作系统。在进行烧录之类的操作时,需要停止加载操作系统,进入 HBOOT的下载模式。嵌入式 Linux很多是用串口终端按某键进入下载模式。然后在终端上输入 bootloader命令进行操作。而手机没有这个条件,一般是用某种特殊组合键来操作,进入下载模式.在 HBOOT里,下载模式有两种,一种是它本身提供的简单功能,用 USB线从 PC机上下载。这种模式称为fastboot模式,这种对 HBOOT要求较小,需要在 PC端安装 USB驱动和相应的下载软件。而更
5、复杂一点的模式是 Recovery模式,它是相当于 HBoot不引导的正常的 Android,而是去引导一个简化的 recovery程序。这个程序会比 fastboot模式的功能要复杂一些,最大的特点是可以在没有电脑的情况,直接用 SD卡里的升级文件进行升级。对于一般的用户而言,操作相对简单。正常引导 Android模式,fastboot 模式和 recovery模式的切换如下图3.HBoot界面参考这个 http:/ HTC G8 在关机状态下同时按 音量下键+开机键 进入 HBOOT菜单,有同样的组合键手机有 G5,G6 ,G7,G8 ,G9,G10,按而进入fastboot模式和 rec
6、ovy模式,则在 HBOOT菜单用音量选择,用电源键确定即可进入.还有较老的手机,是同时按 音量下键+开机键(G1 是拍照键+开机键)进入 HBOOT菜单,而进入fastboot模式需要按返回键+开机键.进入 recovery模式,HOME 键(小房子键)+开机键,有同样的组合键手机有 G1,G2,G3,G4 以我的 HTC G8,这是实拍照片。这里提示,用音量上下键(Volume +/Volume -)移动菜单项,电源键(Power)去选择菜单项,下面分别有 fastboot 模式/recovery 模式HTC HBoot提示信息含义.这里参考了 http:/ PVT SHIP S-ONBU
7、ZZ是产品代号PVT(或者是 EVT,DVT,CVT):是代表手机的版本类型。一台手机从研发到上市,可能会经历多次版本上的调试和改动,版本类型标志着机器是什么时候的产物,有如下选值: EVT:工程机,研发阶段机器的型号; DVT:开发机,特殊开发用途机器的型号; CVT:商用机,交付运营商的机器的型号; PVT:量产机,最终上市的零售版机器的型号。(PVT1:第 1批量产机)SHIP 是 SPL版本 SHIP:shippment 的缩写,出货的意思,一般官方出厂刷的版本 ENG:Engineer 的缩写,工程的意思,一般是第三方修改版的 HBOOT版本。S-ON(或者是 S-OFF):S代表
8、Security Lock,即安全锁。HTC 在手机内部设置了一个安全锁,用来控制系统分区的读写状态。这有两个取值 S-ON:安全锁开;S-OFF:安全锁关。设计这个锁本身的出发点是,象 SD卡写保护开关一样,如果 S-ON,就表示不能刷机,S-OFF 就表能刷机。这一条规则,对 SHIP S-ON/OFF是有效的.因此 HTC出货时,ROM 都是 SHIP S-ON版本。参考 http:/ S-OFF 用 HTC内部的解锁工具进行解锁,而达到的 S-OFF。这种 S-OFF的特点是没有开启 fastboot 功能,比较稳定,并经过很多次测试,硬件兼容性也比较好,不会出现信号不好,wifi 断
9、线等问题;HTC 的任何版本 ROM,官方 RUU都 可以直接刷,刷完官方还是 S-OFF。而对于 ENG S-OFF,往往在调试版本的 SPL或者第三方开发,基本没有什么限制刷机,但是可能刷机时有风险第二行 H-BOOT 1.001.002 : HBOOT 的版本号第三行 MICROP-0622 SLCD 的型号?第四行 TOUCH PANEL-SYN3KEY_01 触摸屏的型号第五行 RADIO- 3.35.20.10 基带芯片固件版本 在其下面有四个菜单项 FASTBOOT 进入 fastboot模式 RECOVERY 进入 Recovery模式 CLEAR STORAGE ,字面意思是
10、清存储空间,其功能是清除所有用户安装 APP,并且把手机设定的值变成缺省值。Android 中 设置存储卡和手机存储恢复出厂设置恢复出厂设置全部清空 效果一样 SIMLOCK 锁定 SIM卡,使用电话功能不能用。这个要手机有写 SIM卡功能,并且SIM卡支持锁定的功能,要解锁可以用 SIM-Ulock这个工具http:/forum.xda- Android,可以进入 fastboot模式下,选择重启reboot4.fastboot 模式当进入 fastboot模式后,在 PC端要安装 USB驱动和并且运行命令行工具fastboot.exeFastboot 也有四个菜单项,分别是 bootloa
11、der ,退出到 HBOOT菜单 REBOOT 重启手机 REBOOT BOOTLOADER 将 SPL重启一次,并进入 FASTBOOT模式 POWER DOWN :关机5.RECOVEY 模式选择 Recovey 模式,在调用 Recovery程序后,首先进入的一个警告图案。 如果想继续进入 Recovey操作,可以选择 音量下键+电源键进入 recovery菜单,如下图形这里也有四个选项: Reboot system now : 重启手机 Apply sdcard:update.zip :用 SDCARD里的 update.izp进行升级Wipe data/factory resetWi
12、pe cache partitionWIPE操作这里的 WIPE是擦除之意,wipe data/factory reset 一般称为硬启动,它会清除用户数据/data 和恢复成出厂配置。Wipe cache partition是清除/cache 里内容6.较老手机 HBOOT模式处理这是是指 HTC G1-G4进入 HBOOT菜单:其组合键的操作是:关机状态下同时按住 音量下键+开机键(G1 是拍照键+开机键)进入 fastboot模式其组合键的操作是:关机状态下同时按住 返回键+开机键进入 Recovery模式.其组合键操作是:关机状态下同时按住 HOME 键(房子键)+开机键附录:这里也有一篇写得不错,对 Android手机各种概念解析http:/