ubifs的开销

Posted zqb-all

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ubifs的开销相关的知识,希望对你有一定的参考价值。

问题

在板子上观察到56M的ubi卷,挂载上ubifs之后,df -h显示可用空间约为50M。
对此现象有客户提出了疑问,希望了解这个开销随容量如何变化。

理论计算

简单查了下资料,没找到明确的计算方式。只知道ubifs分为了六个区域,那么要确认可用大小,应该先减去其余区域的占用,再确认main area本身如何计算可用空间。这个要深入进去看源码,就比较花时间了。暂且搁置,以后有空再来填这个坑。

实际测试

测试命令

想了想,没有确认到理论计算方式的话,那就干脆直接实测一组数据好了。
板子本身nand的容量有限,且操作麻烦,我们直接在PC上模拟即可

sudo modprobe nandsim first_id_byte=0xec second_id_byte=0xd3 third_id_byte=0x10 fourth_id_byte=0xa6
sudo modprobe ubi mtd=0
sudo ubimkvol /dev/ubi0 -N ubifs-vol -s 100MiB
sudo mount -t ubifs /dev/ubi0_0 /mnt/ubifs
df -h | grep ubi0_0

对应卸载命令为

sudo umount /mnt/ubifs
sudo rmmod ubifs ubi nandsim

查看ubi信息的命令

ubinfo /dev/ubi0_0

测试结果

技术图片

注: nandsim支持多种nand,由传入的id指定。模拟不同的nand型号,结果会有所差别。可以选择跟自己目标nand参数较为一致的设备作为模拟,更具有实际参考意义

参考资料

http://www.linux-mtd.infradead.org/faq/nand.html#L_nand_nandsim
http://www.linux-mtd.infradead.org/nand-data/nanddata.html

本文地址: https://www.cnblogs.com/zqb-all/p/11147184.html

以上是关于ubifs的开销的主要内容,如果未能解决你的问题,请参考以下文章

求科普,SQL查询开销是啥意思?100%好,还是50%好?

If 语句比较开销与分配开销

2021-02-26:一个数组arr是二叉树的中序遍历结果,每条边的开销是父节点和子节点的乘积,总开销是所有边的开销之和。请问最

Linux 操作系统原理 — NUMA 架构中的多线程调度开销与性能优化

系统调用开销

Linux 操作系统原理 — 进程管理 — NUMA 架构中的多线程调度开销与性能优化