-
bootloader
三种启动模式
HTC
手机中用的
bootloader
p>
称为
HBoot,
不知道是不是
HTC Bootloader
之意,从官网的源
码看这个
bootloader
不象是
u-boot
的改版。
(
当然这个也
不太确定
HBOOT
就是完全使用与
A
ndroid
相同的源码)
/?p=
platform/bootable/bootloader/;a=tree
;f=
include;hb=HEAD
在
Android
的刷机时,经常会
听到
SPL
,
Recovery
模式,和
fastboot
模式。这些术语是
什么含意呢?
如果在嵌入式
Linux
开发时使用过
u-boot,
< br>对这种几种模式还是比较好理解。
SPL
的全称是
Second
Program Loader,
是比较准确意思是第二阶段程序装载器
,
在
Linux
下没有这么奇
怪的名字,好象是
HTC
从
Windo
ws Mobile
手机引进来,为了统一名称而采用
的名字。
WM
下,第一阶段是称为
IPL,
它的全称是
Initial Program Loa
der,
它是硬件上电后启动
第一个程序。
负责最初硬件
(
Nand
Fla
sh,CPU,SDRAM)
的初始化。
然后再把
SPL
程序装到
RAM
当中
。
SPL
可以做更多复杂的硬件初始化,
并且往往也支持很多复杂命令,
比如网络,
USB
下载。
SPL
再将操作系统装入到
RAM
中运行。
即
IPL -->
SPL--> OS .
到了
HTC
生产
Android
后,仍然采
用这样的名字,以统一起来
.
设计成这样复杂的结构原因有很多,专业嵌入式
Linux
开发人员一般都要明白为什么这
样做
,
主要原因是设计比较灵活。
在
Linux
下,
一般的
bootloader
是把两阶段工作一起做了,
象
u-boot
就是如此。在复杂一点的
CPU<
/p>
,分成独立两阶段的
bootloader,
象
s3c6410
的
SD
卡启动,
首先是由
SD
卡引导区中中的
IROM
启动,
然后
它再
SD
卡上
FAT
< br>分区的
u-boot
的程
序。这
就是一个明显两阶段启动。
因此,简单的说
,SPL
就是
Android
的
bootloader
之意。
HTC
里
就是指
HBOOT.
2.
下载模式
正常情况下,
< br>SPL
将启动
Android
操
作系统。在进行烧录之类的操作时,需要停止加载操
作系统,
进
入
HBOOT
的下载模式。
嵌入式
p>
Linux
很多是用串口终端按某键进入下载模式。
然
后在终端上输入
bootloader
命令进行操作。
<
/p>
而手机没有这个条件,一般是用某种特殊组合键来操作,进入下载模式
.
在
HBOOT
里,下
载模式有两种,一种是它本身提供的简单功能,用
USB
< br>线从
PC
机上下载。这种模式称为
fastboot
模式,这种对
HBOOT
< br>要求较小,需要在
PC
端安装
U
SB
驱动和相应的下载软件。
而更复杂一点的模式是
Recov
ery
模式,它是相当于
HBoot
不
引导的正常的
Android
,而
是去
引导一个简化的
recovery
程序。
这个程序会比
fastboot
模式的功能要复杂一些,
p>
最大
的特点是可以在没有电脑的情况,直接用
SD
卡里的升级文件进行升级。对于一般的用户而
言,操作相
对简单。
正常引导
Android
模式
,fa
stboot
模式和
recovery
模式的切换如下图
界面
参考这个
/?boardid=47&Id=3457
我的
HTC
G8
在关机状态下同时按
样的组合键手机有
音量下键
+
开机键
进入
HBOOT
菜单,有同
G5
< br>,
G6
,
G7
< br>,
G8
,
G9
< br>,
G10,
按而进入
fastb
oot
模式和
recovy
模式,则在
HBOOT
菜单用音量选择,用电源键确定即可进入
.
还有较老的手机
,
是同时按
音量下键
+
开机键
(
G1
是拍照键
+
开机键)
p>
进入
HBOOT
菜单
,
而进入
fastboot
模式需要按
返回键
+
开机键
.
进入
recovery
模式,
HOME
键
(
小
房子键
)+
开机键
,
有同样的组合键手机有
G1,
G2,G3,G4
以我的
HTC
G8
,这是实拍照片。这里提示,用音量上下键
(Volume
+/Volume -)
移动菜单
项,电源键(
Power)
去选择菜单项
,
下面分别有
fastboot
模式
/
recovery
模式
HTC
HBoot
提示信息含义
.
这里参考了
/s/mobile/n/2011-05-24/
第一行
:
BUZZ PVT SHIP
S-ON
BUZZ
是产品代号
PVT
(
或者是
EVT
,
DVT
,
CVT)
:是代表手机的版本类型。一台手机从
研发到上市,可能
会经历多次版本上的调试和改动,版本类型标志着机器是什么时候的产
物,有如下选值:
?
?
?
?
EVT
:
工程机,研发阶段机器的型号;
DVT
:开发机,特殊开发用途机器的型号;
CVT
:商用机,交付运营商的机器的型号;
PV
T
:量产机,最终上市的零售版机器的型号。
(PVT1
:第
1
批量产机
)
SHIP
是
SPL
版本
?
SHIP
:
shippment
的缩写,出货的意思,一般官方出厂刷的
版本
?
ENG
:
Engineer
的缩写,工
程的意思,一般是第三方修改版的
HBOOT
版本。
S-ON(
或者是
S-OFF)
:
S
代表
Security
Lock
,即安全锁。
HTC
在手机内
部设置了一个安全锁,用来控制系
统分区的读写状态。这有两个取值
S-ON
:安全锁开;
S-OFF
:安全锁关。
设计这个锁
本身的出发点是,象
SD
卡写保护开关一样,如果
S-ON
,就表示不能刷机,
S-OFF
就表能刷机。
这一条规则,
对
< br>SHIP
S-ON/OFF
是有效的
< br>.
因此
HTC
出货时,
ROM
都是
SHIP
S-ON
版本。
参考
/mobile/n/2011-05-24/
SHIP S-OFF
用
HTC
内部的解锁工具进行解锁,而达到的
S-OFF
。这种
S-OFF
的特点是没
有开启
fastboot
功能,比较稳定,并经过很多次测试
,硬件兼容性也比较好,不会出现信
号不好,
wifi
断线等问题;
HTC
的任何版本
ROM
,官方
RUU
都
可以直接刷,刷完官方还是
S-OFF
p>
。
而对于
ENG S-OFF
,往往在调
试版本的
SPL
或者第三方开发,基本没有什么限制刷机,
p>
但是可能刷机时有风险
第二行
H-BOOT 1.001.002
:
HBOOT
的版本号
第三行
MICROP-0622
SLCD
的型号
?
第四行
TOUCH PANEL-
SYN3KEY_01
触摸屏的型号
第五行
RADIO-
3.35.20.10
基带芯片固件版本
在其下面有四个菜单项
?
?
?
FASTBOOT
进入
fastboot
模式
RECOVERY
进入
Recovery
模式
CLEAR STORAGE ,
字面意思是清存储空间,其功能是清除所有用户安装<
/p>
APP
,并且
把手机设定的值变成缺省值
。
Android
中
设置→存储卡和手机存储→恢复出厂设置
→恢复出厂设置→全部清空
效果一样
?
SIMLOCK
锁定
SIM
卡,使用电话功能不能用。这个要手机
有写
SIM
卡功能,并且
SIM
卡支持锁定的功能,要解锁可以用
SIM-
Ulock
这个工具
/?t=943726
如果想重启进入
Android
p>
,可以进入
fastboot
模式下,选择
重启