如何正确计算Android动态分区(super)还剩多少空间

1.为何要计算动态分区剩余多少空间?

    因为产品还会无休止的往里内置多媒体文件,或者其他个人认为必要的文件或者APP等,这时候你需要知道你的系统分区还能放多少东西。否则加多了产品编译失败:

lpmake E 06-14 19:21:06  1876  1876 builder.cpp:620] [liblp]Partition system_ext_a is part of group qti_dynamic_partitions_a which does not have enough space free (660688896 requested, 3239821312 used 
out of 3753902080)
Not enough space on device for partition system_ext_a with size 660688896

总大小3753902080(byte) < 3239821312+660688896=3900510208(byte)。

2.查看系统当前super分区的大小:

    用lpdump命令:

  Name: qti_dynamic_partitions_a
  Maximum size: 3753902080 bytes
  Flags: none

 得到当前动态分区A分区总大小3753902080byte.

3.查看已经使用的系统分区容量:
console:/ # df
Filesystem           1K-blocks    Used Available Use% Mounted on
tmpfs                  1018864     876   1017988   1% /dev
tmpfs                  1018864       0   1018864   0% /mnt
/dev/block/dm-0         776264  773912      2352 100% /
/dev/block/dm-4         619968  618112      1856 100% /system_ext
/dev/block/dm-1         609576  607728      1848 100% /vendor
/dev/block/dm-2         384420  383256      1164 100% /product
/dev/block/dm-3            680     676         4 100% /odm

  从df命令可以看出super分区使用情况,总共使用了 773912+618112+607728+383256+676=2383684×1024=2440892416byte

怎么看df命令中的哪些分区是属于动态分区:

   a.先确定你的系统是动态分区,getprop ro.boot.dynamic_partitions返回true表示使用了动态分区;

   b.通过lpdump命令可以看出哪些分区是super分区的:   

Partition table:
------------------------
  Name: system_a
  Group: qti_dynamic_partitions_a
  
------------------------
  Name: vendor_a
  Group: qti_dynamic_partitions_a
  
------------------------
  Name: product_a
  Group: qti_dynamic_partitions_a
  
------------------------
  Name: odm_a
  Group: qti_dynamic_partitions_a
  
------------------------
  Name: system_ext_a
  Group: qti_dynamic_partitions_a
  

当然在编译阶段还有很多方式可以看出来super list 分区集合,这里不列出。

4.那么剩余的容量就可以算出:3753902080−2440892416=1313009664÷1024÷1024÷1024=1.22G。因此往系统分区内置东西最多1.2G,这1.2G是压缩过的文件大小,如果你放的原始文件可以被压缩,那就可能超过1.2G都没问题。

### starRC、LEF 和 DEF 文件的 EDA 工具使用教程 #### 关于 starRC 的使用说明 starRC 是由 Synopsys 开发的一款用于寄生参数提取 (PEX) 的工具,在 detail routing 完成之后被调用,以提供精确的电阻电容延迟分析数据[^2]。该工具能够处理复杂的多层互连结构并支持多种工艺节点。 对于 starRC 的具体操作指南,通常可以从官方文档获取最权威的信息。访问 Synopsys 官方网站的技术资源页面,可以找到最新的产品手册以及应用笔记等资料。此外,还可以通过在线帮助系统获得交互式的指导和支持服务。 #### LEF 和 DEF 文件格式解析及其在 Cadence 中的应用 LEF(Library Exchange Format)和 DEF(Design Exchange Format)是两种广泛应用于集成电路布局布线阶段的标准文件格式之一[^3]。前者主要用于描述标准单元库中的元件几何形状;后者则记录了整个芯片版图的设计信息,包括但不限于各个模块的位置关系、网络连接情况等重要细节。 当涉及到这些文件类型的编辑或读取时,Cadence 提供了一系列强大的平台级解决方案,比如 Virtuoso Layout Editor 就可以直接打开并修改 LEF/DEF 格式的项目工程。为了更好地理解和运用这两种文件格式,建议参阅 Cadence 发布的相关培训材料或是参加其举办的专项课程学习活动。 ```bash # 示例命令:查看 LEF 或 DEF 文件内容 cat my_design.lef cat my_design.def ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值