在嵌入式 Linux 下写入数据到 TF 卡时(一般设备节点为/dev/mmcblk1p1),如果突然断电,可能有多少数据会错乱?是一个扇区(一般为 512 字节)还是一个页(Nand Flash 颗粒参数,一般为 2K 或 4K)亦或者是一个块(也是 Nand Flash 颗粒属性,128K 至 512K 不等)?
由于 Nand Flash 颗粒特性为擦除后写入,数据肯定会发生错乱,但又因为 TF卡是有中间层的,不知其具体实现,希望能为我解惑。
因为我正想使用 zip64+fuse3 实现一个基于 fat32 的文件系统,与一般行车记录仪和监控设备的 tf 卡格式方式一致,保证对 fat32 的 fat 表项和目录项只写入一次,则可保证文件系统不损坏;但传统的方法不能动态文件数量和大小,加入 zip64 后就可以,不过还需要做一些重要时刻的备份,因此需要知道需要备份的数据量。
如果有更好的办法,也请大家不吝赐教