[MTK] 如何确认各个分区起始偏移与大小

无标签 2020-05-15

阅读:2972

分区表中(partition_table_MTXXXX_emmc.csv)中包含各分区预设大小信息,但是

(1)ptgen工具在根据分区表生成scatter文件中,会根据平台配置文件、align需求等进行调整,导致scatter文件中部分分区大小与预设大小可能不一致。

(2)为达到usedata分区自适应存储器(如emmc)实际大小的目的,第一次开机过程中还会根据存储器实际剩余空间对userdata分区进行resize,即userdata分区大小与scatter文件的大小可能不一致。

因为上面提到的因素,本篇FAQ将描述各个分区起始偏移与大小的确认方法:

1. pgpt、sgpt分区存储的是分区表本身相关信息,起始偏移与大小情况:

pgpt分区,放在对应存储器区域起始,起始偏移为0,分区大小直接参考MTXXXX_Android_scatter.txt即可;

sgpt分区,放在对应存储器区域最后,起始偏移需根据对应存储器区域实际大小进行计算,分区大小直接参考MTXXXX_Android_scatter.txt即可;

2. data分区之前的分区,分区起始偏移与大小,直接参考MTXXXX_Android_scatter.txt即可。

3. 除了pgpt、sgpt外,其它所有分区,

(1)可以通过flash tool的下载过程log查看(名称类似于:SP_FT_Dump_xxxxGLB_xxxx.log),搜索part_name,可以看到类似如下信息(以userdata分区为例),其中offset为分区起始偏移,size为分区大小,单位为byte:

[00001030] [09:02:59:956886] [Tid0x000020b8] [debug] part_name:[userdata], offset[0xc9000000], size[ 0x2e17fbe00], region[8] #(gpt.cpp, line:495)

(2)可以通过开机lk阶段log查看,搜索GPT_LK,可以看到类似如下信息(以userdata分区为例),其中start_sect为分区起始偏移,nr_sects为分区大小,单位为512byte:

GPT_LKname=userdata, start_sect=0xcc4000, nr_sects=0x2d5c7df, uuid=c4c310e2-4a7e-77d3-4818-61e2d8bb5e86

(3)通过adb shell查看,但不同平台相关节点会有差异,如果参考下述仍然有疑问,请单独提eservice处理。

下面以userdata为例说明,查看到的对应start值为分区对应起始偏移,size值为分区对应大小,单位为512byte

对于EMMC:

xxxx:/ # ls -l /dev/block/platform/bootdevice/by-name

total 0

lrwxrwxrwx 1 root root 21 2015-02-12 00:13 boot -> /dev/block/mmcblk0p25

... ...

lrwxrwxrwx 1 root root 21 2015-02-12 00:13 userdata -> /dev/block/mmcblk0p31

xxxx:/ # cat /sys/block/mmcblk0/mmcblk0p31/start

6782976

xxxx:/ # cat /sys/block/mmcblk0/mmcblk0p31/size

8454111

P.S. p31请根据实际分区对应值修改

对于UFS:

xxxx:/ # ls -l /dev/block/platform/bootdevice/by-name

total 0

lrwxrwxrwx 1 root root 16 2009-12-31 19:00 boot -> /dev/block/sdc36

......

lrwxrwxrwx 1 root root 16 2009-12-31 19:00 userdata -> /dev/block/sdc43

xxxx:/ # cat /sys/block/sdc/sdc43/start

9879552

xxxx:/ # cat /sys/block/sdc/sdc43/size

240009152

P.S. 43请根据实际分区对应值情况修改

Note: 上文MTXXXX需与实际使用平台一致

赞赏

微信打赏

支付宝打赏

android gpt分区大小,[MTK] 如何确认各个分区起始偏移与大小相关推荐

  1. android AVB2.0(六)Super动态分区介绍

    文章目录 一.Super分区是什么? 二.Super分区工作原理 三.Super分区的配置和编译 1.分区表的配置 2. Super镜像的编译 2.1 Super镜像的编译日志 2.2 Super镜像 ...

  2. 管理员技术(六): 硬盘分区及格式化、 新建一个逻辑卷、调整现有磁盘的分区、扩展逻辑卷的大小、添加一个swap分区...

    一.硬盘分区及格式化 问题: 本例要求熟悉硬盘分区结构,使用fdisk分区工具在磁盘 /dev/vdb 上按以下要求建立分区: 1> 采用默认的 msdos 分区模式         2> ...

  3. linux挂载home分区,Linux(CentOS6) 调整 /home 挂载 分区大小

    安装centos6.3使用自动推荐分区,发现一个问题/home 分区过大,超过了1.1T. [root@localhost ~]# df -h 文件系统              容量  已用  可用 ...

  4. uefi+guid分区与legacy+mbr分区_WIN10下如何将 MBR 分区转换为 GPT

    MBR2GPT.EXE 可将磁盘从主启动记录 (MBR) 转换为 GUID 分区表 (GPT) 分区形式,无需修改或删除磁盘上的数据. 该工具旨在从 Windows 预安装环境 (Windows PE ...

  5. linux 减小根分区大小_减小linux下根分区

    减小linux下根分区 2011/02/25 Xingfuxiaozi 减小linux 根分区 红帽企业版Linux安装程序默认的分区结构是,划分 /boot 分区和 swap 分区,然后将剩下的空间 ...

  6. android分区知识,特别的recovery分区的构成

    第一部分,android的分区构成 1,分区介绍第二篇 1. bootloader   当我们拿到一款手机,第一件事应该就是按下电源键开机,那么从开机到进入到桌面程序这中间发生了些什么呢,我们从下面这 ...

  7. 如何在GPT格式下创建EFI和MSR分区(安装WIN10/WIN8.1)

    如何在GPT格式下创建EFI和MSR分区(安装WIN10/WIN8.1) 前言 本文将总结如何在GPT格式的磁盘下安装win10系统,总结下折腾了本屌两天的鬼东西.老本子用了4年了,想换个笔记本,了解 ...

  8. 硬盘分区及格式化 新建逻辑卷 扩展逻辑卷的大小

    1 案例1:硬盘分区及格式化 1.1 问题 本例要求熟悉硬盘分区结构,使用fdisk分区工具在磁盘 /dev/vdb 上按以下要求建立分区: 采用默认的 msdos 分区模式 第1个分区 /dev/v ...

  9. MTK驱动(46)---- Android CPU频率设置(MTK平台)

    Android CPU频率设置(MTK平台) 1.CPU 频率设置 主要设置CPU的最大和最小频率 mPerfServiceWrapper.userReg 注册 mPerfServiceWrapper ...

最新文章

  1. python 如何判断一个函数执行完成_Python核心编程的四大神兽迭代器、生成器 、闭包以及装饰器...
  2. json.decoder.JSONDecodeError: Expecting value: line 28 column 5 (char 731)
  3. 你真的会搜索?低效的你简直在浪费生命(三)(终结篇)
  4. SAP Spartacus Unit List Component的设计明细 - UnitListComponent
  5. 二维码扫描利用ZBar实现
  6. 打印iphone支持的所有字体
  7. Kafka三款监控工具比较
  8. error in static/js/xxx.js from UglifyJs Unpected token: punc() [static/js/xxx.js]
  9. php中get结合mysql_php中,$_GET中的数值能被mySQL读到么?
  10. 雅虎辉煌不再,紫色血液永存
  11. params 有什么用?
  12. 剑指offer 09变态跳台阶
  13. 使用AJAX如何得到数据库当中的值!
  14. BT.1120协议简介
  15. 高等数学(第七版)同济大学 习题4-1 个人解答
  16. 在计算机中这样切换大小英语字母,怎么在Excel2016表格中快速转换字母大小写
  17. 直播平台搭建源码,css预加载旋转动画 与 流光字体
  18. opencv图像校正
  19. python自动化交易_用Python寫自動交易程式的入門平台: Quantopian
  20. xcode制作越狱后ipa安装文件

热门文章

  1. Product Oriented Recurrence(Codeforces Round #566 (Div. 2)E+矩阵快速幂+欧拉降幂)
  2. python循环体执行的次数_下面Python循环体执行的次数与其他不同的是( )。
  3. java 时间判断_java怎样判断日期的先后?
  4. 【综述】对抗样本生成及攻防技术综述
  5. 利用永恒之蓝渗透WIN7
  6. 王者荣耀之父姚晓光“奇葩”的工作理念
  7. 2021年轻人头发报告:秃头男女,恋爱告急
  8. 华为 android 5.0系统下载地址,华为emui5.0升级公告-emui 5.0官方版下载v5.0 官方最新版-西西软件下载...
  9. opencv-python立体匹配(极线校正)
  10. android crosswalk闪退,一篇文章读懂开源内嵌浏览器Crosswalk【转载】