免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2878 | 回复: 1
打印 上一主题 下一主题

norflash移植JFFS2文件系统更深入问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-07-21 11:40 |只看该作者 |倒序浏览
硬件平台是S3C2510,8M norflash为程序存储器,8M norflash为数据存储器,根文件系统为romfs,系统启动后
挂载jffs2文件系统。
    JFFS2文件系统的移植可以说是完成了,首先可以挂载分区到“/mnt”目录,而且可以读写文件,可以正常
卸载再挂载。而且也支持eraseall命令和erase命令。似乎一切都是正常的。(具体移植过程也是参看网上的资
源)
    但是近来经过大量的写文件操作,发现系统速度会越来越慢。(表现为运行灯闪烁不均匀,可以明显观察
到对文件操作时,运行灯就变慢了,当然这一点还是在可以理解的。)首先我们的系统是一个大循环方式工作
,当然如果一个写文件程序或访问JFFS2不能快速返回,将导致整个循环周期变长。表现为运行灯变慢。
    上个问题还是可以解释的,另一个问题我一直没有合理的解释。系统断电后(手动断电或复位)重启,在
mount JFFS2 文件系统时出现很多的DATA CRC 错误。导致根本无法mount上JFFS2文件系统。可以说这个文件系
统已经挂了。
    问题是,在断电之前,对文件的操作,系统未报告任何错误。为什么重启后会一下很多错误。
    jffs2_scan_inode_node(): Data CRC failed on node at 0x001af628: Read0xbbb3577d, calculated
0x71db717b
   
    导致系统无法运行其它程序。

论坛徽章:
0
2 [报告]
发表于 2009-07-27 10:33 |只看该作者
第一个问题是因为:jffs的一个工作原理造成的,就是说,她首先要将数据写到没有数据的地方,旧的数据也做了标示,但是事实上没有删除,当jffs彻底没有数据了,他就会开始查找各个节点,整理删除,这个过程就比较慢了!


第二个问题好像是因为你的数据节点错误造成的,看到你的那个东西,感觉你可以检查一下这个:
制作jffs的时候,有一个-e的选项,是说扇区大小,你可以参考datesheet,看看你的那个具体应该是多少!有一些norflash有大小区两个部分!
mkfs.jffs2 -r rootfs -o rootfs.jffs2 -e 0x10000 --pad=0x500000 -s 0x200 -n
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP