估计yaffs2内存使用情况
yaffs2主要使用内存的地方是yaffs_object和yaffs_tnode,下面的方法大体上可以估计出使用的
内存数量,但由于yaffs2的内存是根据系统运行情况,动态变化的,实际情况会有些出路。
计算方法如下:
1. yaffs_Objectszh占用 内存情况
每个文件,目录,符号连接都是一个object,每个object大概用了120个字节。
所以假设有1000个文件,那么object占用ram的大小是1000 * 120 => 120Kbytes
2. yaffs_Tnode 占用内存情况
首先计算 需要用多少bit数来表示整个nand:
bitnum = log2(nand 有的page数目)
然后在此基础上加1,yaffs内部表示时候需要多一个bit。
如果如上的bitnum不是偶数,加1。
最后内存使用情况是bitnum * pagenum / 8 字节
例如:nand有65536个页面
bitnum = log2(65536) + 1 = 16 + 1 = 17
向上去偶数,得到bitnum = 18
最后,表示整个nand的tnode用的内存是:
18 * 65536 / 8 = 147456 字节
转载请注明出处