在HTC的Android 系统的系列手机中,HBOOT就是SPL。是用来引导手机启动的,可以用来检测手机硬件信息,寻找系统启动分区,其实跟我们平时在PC上见到的BOOT启动项功能类似。
HBOOT的作用
(资料图)
手机是由hboot来负责引导启动的,这里简单讲一下流程,hboot启动后,会检查安全锁的状态:
如果检查后发现是S-ON,说明安全锁是打开的,那么hboot在完成引导启动的同时,会将system和recovery分区做写保护。
如果检查后发现是S-OFF,说明安全锁是关闭的,那么hboot在完成引导启动的同时,会将system和recovery分区的写保护打开。
那这个经过修改后的hboot在这里起到什么作用呢?
当手机通过hboot启动,hboot在检查安全锁是什么状态的时候,无论检查结果是什么,这个修改过的hboot都会认为安全锁是关闭的,即让hboot自己欺骗自己,认为安全锁处于S-OFF状态。实际上此时的安全锁还是S-ON,只不过显示出来是S-OFF罢了。
这也就为下面这种情况找到了合理的解释:
机器状态为ENG S-OFF的朋友刷了官方包,然后ENG变回SHIP,S-OFF变回S-ON。但机器状态为SHIP S-OFF的朋友进行同样的操作,却不会失去S-OFF。
因为官方包是一个完整的刷机包,在更新过程中,会把hboot覆盖掉,那么,当这个被修改的hboot被替换成官方原版的hboot后,我们的机器也就回复到了原始的SHIP状态。此时,因为ENG S-OFF是一种假象,所以,S-OFF就变回了S-ON,但是因为SHIP S-OFF是真的把安全锁关了,所以,S-OFF还是保持不变。
既然你刷了ENG的hboot,那么他就会一直都显示S-OFF,所以不会有ENG S-ON的情况出现。
什么是SPL
SPL英文全称是Second Program Loader,“第二次装系统”,就是负责装载操作系统到ROM中。另外SPL还包括许多系统命令,如mtty中使用的命令等。SPL损坏了还可以用烧录器重写。
SPL一般提供这几部分功能:检测手机硬件、寻找系统启动分区、启动操作系统为系统的基本维护提供操作界面,可以通过数据线与操作终端(如PC)建立连 接,并接受和执行相应命令。它里面包含许多命令,像r2sd,l,doctest(危险命令,他会擦除gsmdata)等。我们常说的三色屏就是由SPL 驱动的。检测SD卡,当你把一些特殊制作的SD卡插入后,SPL可以在启动时校验并根据SD卡内容刷机或执行一些命令。这有点类似于PC 的从软驱启动。简单点说,SPL就相当于PC的BIOS。
SPL主要作用就是引导系统启动。
SPL除了包含手机的bootloader启动android外,还包含其他一些功能,如刷nbh,支持fastboot等等。
G1 Original SPL
VER: HBOOT-0.95.0000
ZIP: G1OrigBootloader_nocheck.zip
MD5: ae58b427b797707c453f3b3fa9d13c76
大家说的三色屏就是它,由damien667 dump出来的。该版本不支持fastboot,所以没法刷直接刷img文件。在这里简单说下G1的破解,大家都知道G1的破解就是把recovery替 换成使用验证签名为testkey的,使我们能够刷修改后有root权限的自制rom。在TC4-RC29 TC5-RC7的nbh在09年1月1号被xda的chavonbravo泄漏后,我们才能通过这个spl降级来破解,获取系统权限,然后刷 testkey的recovery