当前位置:网站首页>hboot与recovery、boot.img、system.img
hboot与recovery、boot.img、system.img
2022-07-31 21:33:00 【百口可乐__】
hboot
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还是保持不变。
hboot相当于电脑的bios
recovery
Recovery是Android手机备份功能,指的是一种可以对安卓手机内部的数据或系统进行修改的模式(类似于windows PE或DOS)。在这个模式下可以,对已有的系统进行备份或升级,也可以在此恢复出厂设置。
刷入第三方的Recovery,将获得更多的功能,并且可以刷入第三方rom,官方自带则不行。
boot.img
boot.img和system.img是刷机时经常用到的分区镜像文件
boot.img是Android系统启动所必须加载的文件。简单的说,boot.img包含两部分,分别为kernel 和ramdisk。
Kernel 操作系统内核操作系统内核是指大多数Linux操作系统的核心部分。它由操作系统中用于管理存储器、文件、外设和系统资源的那些部分组成。操作系统内核通常运行进程,并提供进程间的通信。
虚拟内存盘是通过软件将一部分内存(RAM)模拟为硬盘来使用的一种技术。相对于直接的硬盘文件访问来说,这种技术可以极大的提高在其上进行的文件访问的速度。但是RAM的易失性也意味着当关闭电源后这部分数据将会丢失。但是在一般情况下,传递到RAM盘上的数据都是在硬盘或别处永久贮存的文件的一个拷贝。经由适当的配置,可以实现当系统重启后重新建立虚拟盘。
boot.img会引导系统启动,如果在刷机过程中刷入了错误的boot.img,会导致系统无法正常启动
system.img
system.img 是安卓 (Android) 系统中存放系统文件的映像 (image) 文件,文件格式为 yaff2或者emmc,在刷机时将其展开,并刷入到手机的system分区中,system.img的目录结构:
app目录:存放一般的apk文件。
bin目录:存放一些Linux的工具,但是大部分都是toolbox的链接.
etc目录:存放系统的配置文件。
fonts目录:存放系统的字体文件。
framework目录:存放系统平台所有jar包和资源文件包。
lib目录:存放系统的共享库。
media目录:存放系统的多媒体资源,主要是铃声。
priv-app目录:android4.4开始新增加的目录,存放系统核心的apk文件。
tts目录:存放系统的语言合成文件。
usr目录:存放各种键盘布局,时间区域文件。
vendor目录:存放一些第三方厂商的配置文件、firmware以及动态库。
xbin目录:存放系统管理工具,这个文件夹的作用相当于标准Linux文件系统中的sbin.
build.prop文件:系统属性的定义文件。
边栏推荐
- Routing interception of WeChat applet
- leetcode 665. Non-decreasing Array
- C程序设计-方法与实践(清华大学出版社)习题解析
- Realization of character makeup
- Introduction to Audio Types and Encoding Formats in Unity
- 【愚公系列】2022年07月 Go教学课程 025-递归函数
- Arduino框架下STM32全系列开发固件安装指南
- Shell script quick start to actual combat -02
- In Golang go-redis cluster mode, new connections are constantly created, and the problem of decreased efficiency is solved
- BM3 将链表中的节点每k个一组翻转
猜你喜欢
Daily practice——Randomly generate an integer between 1-100 and see how many times you can guess.Requirements: The number of guesses cannot exceed 7 times, and after each guess, it will prompt "bigger"
Recognize anomalies (you will understand after reading this)
The old music player WinAmp released version 5.9 RC1: migrated to VS 2019, completely rebuilt, compatible with Win11
PCB叠层设计
Memblaze发布首款基于长存颗粒的企业级SSD,背后有何新价值?
Student management system on the first day: complete login PyQt5 + MySQL5.8 exit the operation logic
How to identify fake reptiles?
Introduction to Audio Types and Encoding Formats in Unity
高效并发:Synchornized的锁优化详解
Embedded development has no passion, is it normal?
随机推荐
求n以内的素数
grep命令 笔试题
"The core concept of" image classification and target detection in the positive and negative samples and understanding architecture
sqlite3 simple operation
统计UTF-8字符串中的字符函数
AI 自动写代码插件 Copilot(副驾驶员)
返回一个零长度的数组或者空的集合,不要返回null
Thymeleaf是什么?该如何使用。
Talking about the algorithm security of network security
每月一书(202207):《Swift编程权威指南》
PCB叠层设计
The old music player WinAmp released version 5.9 RC1: migrated to VS 2019, completely rebuilt, compatible with Win11
Daily practice——Randomly generate an integer between 1-100 and see how many times you can guess.Requirements: The number of guesses cannot exceed 7 times, and after each guess, it will prompt "bigger"
spark reports an error OutOfMemory "recommended collection"
A few permanent free network transmission, convenient and simple (Intranet through tutorials)
Chapter VII
Implementation of a sequence table
-xms -xmx(information value)
cas and spin locks (is lightweight locks spin locks)
leetcode 665. Non-decreasing Array