这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 重启后偶尔发生TFFS文件系统崩溃,无法tffsDevCreate成功

共2条 1/1 1 跳转至

重启后偶尔发生TFFS文件系统崩溃,无法tffsDevCreate成功

菜鸟
2007-07-03 01:08:59     打赏

  大致几百次重启后出现的崩溃,估计和擦写时重启有关,需要重新格式化。很难复现该故障。但总是偶尔的出现这种故障,挺烦人的,大家有无解决思路?
  woodhead版本曾经总结过:
3、TFFS在操作过程中掉电会引起TFFS系统崩溃,是否有办法避免
答:可以修改sysTffs.c里面的函数sysTffsFormat的第4个参数vmAddressingLimit为0来避免绝大多数安全问题。

  这个的原理是什么,woodhead能否解释一下?是否可行我待会试一试。谢谢!




关键词: 重启     偶尔     发生     文件     系统     崩溃     无法     tffs    

菜鸟
2007-07-18 23:33:00     打赏
2楼

谢谢版主解释的这么详细

我曾经复现过一次故障,然后单步跟踪,发现是在ftllite.c的mountFTL函数如下语句中,检测到某一个vol.pageTable[iPage]值为 UNASSIGNED_SECTOR(好像是第0页,iPage为0),从而返回flBadFormat退出,加载失败。

for (iPage = 0; iPage < vol.noOfPages; iPage++)
if (vol.pageTable[iPage] == UNASSIGNED_SECTOR)
{
DEBUG_PRINT((("#:Corrupted pageTable page%d found to be currupted, mount aborted\r\n"),iPage));
vol.badFormat = TRUE;
}

我格式化参数是直接映射范围默认为64K的,第0页的应该是采用直接映射的吧,而且恰好是FAT表的对应扇区?


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]