Android-Super分区
文章目录
- 1.super分区是什么
- 2.super分区工作原理
1.super分区是什么
super分区也叫做dynamic动态分区,动态分区是Android的用户空间分区系统,在Android R版本开始引入,目的是为了解决system和vender等分区size不能动态调整的问题。例如物理分区表配置固定size后,如果软件版本对system,verdor分区size需要频繁调整时,需要修改物理分区表和重新编译gpt表,使用起来不是很便利。
引入super动态分区之后,将system,vendor等分区一起“打包”在super分区中,物理分区表只有super,不再单独配置system,vendor等分区的配置,其中的子分区可以动态的调整大小。编译的时候,会将system,vendor等分区的信息以metadata形式记录下来,生成super.img时会根据matadata信息进行处理
另外super分区中的子分区,也可以通过fastbootd以fastboot的方式刷入,或者使用lpunpack解压开。
2.super分区工作原理
动态分区时使用Linux内核中的dm-linear device-mapper模块实现的,Linear是指将device,mapper设备的线性范围映射到另一个设备的线性范围
属于LVM逻辑卷管理。
Super分区包含列出了每个子分区的名称和块范围的metadata元数据.
在开机init的first stage第一阶段运行期间,会解析并验证metadata元数据并创建虚拟block设备来表示每个子分区,创建logical逻辑分区出来。在init启动的第一阶段会去加载和处理,采用和以前类似的AVB校验流程,验证通过后,super包含的几个分区全部采用hashtree类型做dm-verity验证。在运行过程中对访问的block数据进行dm-verity安全校验。校验通过过,分别挂载这几个逻辑子分区。
Android-Super分区相关推荐
- android R启动找不到super分区问题
总结一个android R打开super动态分区后,init第一阶段启动失败的例子,也为了自己后面看看趟过的坑. 在移植适配android R项目,主要做了如下事情: 打开BOARD_AVB_ENAB ...
- Android 动态分区详解(六) 动态分区的底层机制
文章目录 1. Android 动态分区的两重含义 2. device mapper 的原理 3. linear 映射的原理 3.1 多个设备映射示例 3.2 `dmsetup create` 命令参 ...
- Android 动态分区详解(七) overlayfs 与 adb remount 操作
0. 导读 最开始学习 Android 动态分区源码的时候,比较代码发现 system/core/fs_mgr 目录下多了一个名为 fs_mgr_overlayfs.cpp 的文件,一直不知道什么时候 ...
- Android 动态分区详解(一) 5 张图让你搞懂动态分区原理
文章目录 0. 导读 1. 动态分区详解的背景 1.1 背景 1.2 动态分区的本质 2. Linux device mapper 驱动 3. Android 动态分区布局 3.1 动态分区布局 3. ...
- android 新分区 挂载,android 新增分区以及挂载方法-Go语言中文社区
好长时间没更新我的CSDN 了,今天抽时间来重新一下,了解一点android新增分区和挂载的东西. 我是以高通平台代码为例来写的. 闲话不多说,直接上方法: 以新增kaicom分区举例: 1.在par ...
- Android 系统(65)---Android修改分区格式为F2FS
Android修改分区格式为F2FS 谁人没试过犹豫,达到理想不太易 -–Beyond 本文介绍如何将Android系统的/data分区改变成F2FS格式.修改的原因是F2FS分区格式拥有更加的I/O ...
- Android 虚拟分区详解(三) 分区状态变化
Android Virtual A/B 系统简称 VAB,我将其称为虚拟分区. 本系列文章基于 Android R(11) 进行分析,如果没有特别说明,均基于代码版本 android-11.0.0_r ...
- Android系统分区介绍
Android系统分区介绍 hboot--系统开机引导类似电脑BIOS,这块刷错手机就会变成砖 radio--通讯模块.基带.WIFI.Bluetooth等衔接硬件的驱动软件 model分区 reco ...
- android动态分区AB升级,Android A/B 系统升级简介
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 来源:https://pengzhangdev.github.io/Android-AB-system-update/ ...
- Android 虚拟分区详解(二) 虚拟分区布局
文章目录 0. 导读 1. Android 传统 A/B 分区和动态分区布局 2. Android 虚拟分区布局 3. 虚拟分区的思考 2.1 分区只有一套,如何实现 A/B 系统特性? 2.2 部分 ...
最新文章
- Linux0.11内核引导启动过程概述
- 【Android 启动过程】Activity 启动源码分析 ( Activity -> AMS、主线程阶段 )
- Dijkstra 算法
- 的图层类型有哪些_东莞都市领航平面设计培训班都学习哪些内容?
- 人生赢家!带着宝宝去面试~清华90后女学霸范楚楚加入麻省理工MIT任助理教授!...
- 【4747】java语言程序设计(一)2011年10月考试复习资料_全国2011年10月自考Java语言程序设计(一)试题3...
- mac homebrew chinese mirror
- 【论文研读】【医学图像】【R2UNet】Recurrent residual U-Net for medical image segmentation
- 微信被指监听用户,腾讯回应;谷歌意外推送 Android 11 Beta 更新;Linux 5.7 发布 | 极客头条...
- rust显卡要求 steam_Steam夏促游戏销量排行,Epic称暂时不要买地平线黎明时分,虚幻5引擎配置要求不高,热血无赖电影开拍,Steam夏促育碧专区...
- 协鑫集成等四家公司被退出欧盟MIP协议
- android串口方案:usb转串口 usb 转ttl
- 微信小程序下载pdf到本地的坑
- cocos creator 打包apk_Cocos Creator Android打包 apk
- LabView---双通道示波器(内含信号发生器)
- Linux Command diff 文件比较
- CTFHUB刷题 密码口令/默认口令
- 程序设计:从圆的半径求得圆的面积
- 一些投资理财渠道(仅供参考)
- javaEye上对于南京软件公司的讨论
热门文章
- SELinux的设置及应用举例
- [python] fileinput模块
- 编译期注解之JavaPoet
- html中怎么制作太阳月亮交替,CSS3 简单的地球/太阳/月亮动画
- C++读取和写入CSV文件,实现判断文件格式,并且特定的排序输出的实例
- MAC下的Sublime Text关闭自动更新提示,关闭更新检查,适用于Sublime 3和Sublime 4
- opengles图像处理之图片锐化处理
- python量化交易之 放量跌到底买入-涨1.1再卖
- 【图像分类】 一文读懂AlexNet
- UML类图关系(C++)