8110|26

68

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

wince下,文件系统丢失 [复制链接]

我用的时2410的板子,除wince镜像外多余的空间,建立了一个名为“flash”的文件夹,可以任意的保存文件,
但是由于经常直接断电,导致这个“flash”文件夹没有了!
好像时因为直接断电次数过多,丢失了文件系统,以至这个文件夹不存在
此帖出自WindowsCE论坛

最新回复

遇到同样问题,准备升级到CE6用TExtFAT了。  详情 回复 发表于 2010-4-13 19:42
点赞 关注
 

回复
举报

70

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
FAT文件系统本身就有突然掉电,数据丢失及文件系统被破坏问题,建议用TFAT
此帖出自WindowsCE论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
FAT文件系统依赖FAT表,在更新的过程中,突然掉电,会直接导致整个分区丢失。其实也不是真丢失,只是无法被系统识别。在PC上也如此。所以才会警告不要突然断电。

你多测试几轮,看看是否多次突然掉电都会引起这样的现象。因为还有可能是NAND FLASH的坏块造成的。
此帖出自WindowsCE论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

4
 
有什么办法可以修复这个问题呢
我们现在发出去的产品很多都没有考虑到这个问题,现在有大比分机子都瘫痪了
急于求解解决办法啊
感谢了
此帖出自WindowsCE论坛
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

5
 
TFAT格式怎么才能实现呢,我使用的是wince420的系统
此帖出自WindowsCE论坛
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

6
 
首先,TFAT只能够保证每一个传输事务是安全的,通俗的来讲就是保证目录信息和FAT表对应关系的正确性的,但这些东西无助于你解决当前你所碰到的问题,但对于未出货的机台可以采用TFAT使产品的存储系统更加健壮一些;
再者,从现象来看,你可能是文件系统分区的DBR遭到了破坏,有几个方法你可以尝试一下:1. 将DBR所在的Sector进行进行清零,然后在注册表中文件系统对应的设置项处设置上"AutoFormat"=dword:1,在开机(支持Hive-registry)或者Reset的过程中回去检测该部分并重新对文件系统分区进行Format,然后就OK了;2.第二种办法比较麻烦,你可以将好机台上面的分区数据从第一个Sector开始到最后一个Sector全部Dump下来然后按照顺序写入到Failed的机台上,这样类似于一键备份和还原的方法;
第三,从你描述的情况来看,这种频繁断电的问题仅仅从文件系统上着手难以彻底的解决问题,建议从Flash的驱动上考虑一下有没有更好的措施。
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

7
 
1. 将DBR所在的Sector进行进行清零
    会不会把FAT格式的flash里面的文件清除掉,里面有一些关键文件,开机的时候需要启动里面的程序

还有就是我们的产品都不能与电脑同步,因为两个usb口都设置成host口了
可以插入U盘。
此帖出自WindowsCE论坛
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

8
 
>> 1. 将DBR所在的Sector进行进行清零
    会不会把FAT格式的flash里面的文件清除掉,里面有一些关键文件,开机的时候需要启动里面的程序
   对,这样做在会导致随后的格式化操作,将分区中的数据破坏掉。
   如果你既想保存Flash上的一些关键文件,不想做重新的格式化操作的话,那就只有一种办法了,就是Dump分区好的机台中的分区中数据了吧。
   可以写一个AP存放到SD卡上然后进入系统后进行执行Dump数据到一个文件中,然后再将这些文件按照Sector为单位写入到Fail的机台中。
   不过,如果不同的机台在出厂的时候上面的一些文件不同的话,那就有点麻烦了。
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

9
 
问题就在这个地方啊,不同批次的机子里面的文件是不同的

我想加入一个断电保护,加了一个大电容,能够在断电之后继续工作5秒钟,在这5秒钟的时间里
我把系统挂起,系统挂起是否就能起到保护FAT文件系统的作用

此帖出自WindowsCE论坛
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(初级)

10
 
引用 8 楼 so927 的回复:
问题就在这个地方啊,不同批次的机子里面的文件是不同的

我想加入一个断电保护,加了一个大电容,能够在断电之后继续工作5秒钟,在这5秒钟的时间里
我把系统挂起,系统挂起是否就能起到保护FAT文件系统的作用

你这个想法涉及到“断电保护”的领域,不是这么简单做的。你知道WINCE系统下运行5秒需要多大的电量吗?你得用超级大电容才行,得用到F(法拉)级的才有可能。
你的系统没有电池吗?
系统中经常对Flash这个文件夹进行操作吗?
此帖出自WindowsCE论坛
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

11
 
现在就是加了一个超级大电容,断电之后经过多次测试能够运行5秒钟!

我的程序没有写FLASH这个文件夹,但是经常在读这个文件夹,
此帖出自WindowsCE论坛
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

12
 
引用 9 楼 shuiyan 的回复:
引用 8 楼 so927 的回复:
问题就在这个地方啊,不同批次的机子里面的文件是不同的

我想加入一个断电保护,加了一个大电容,能够在断电之后继续工作5秒钟,在这5秒钟的时间里
我把系统挂起,系统挂起是否就能起到保护FAT文件系统的作用

你这个想法涉及到“断电保护”的领域,不是这么简单做的。你知道WINCE系统下运行5秒需要多大的电量吗?你得用超级大电容才行,得用到F(法拉)级的才有可能。
你的系统没有电池吗…

太夸张了吧,坚持5S,成本上就把这种方案给否定了吧,更不用提机构上需要重新设计了。
此帖出自WindowsCE论坛
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(高级)

13
 
没办法啊,已经出厂的及其只有这样解决了啊
现在硬件是解决了,但是软件还存在问题
帮帮忙啊
谢谢了
此帖出自WindowsCE论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

14
 
引用 12 楼 so927 的回复:
没办法啊,已经出厂的及其只有这样解决了啊
现在硬件是解决了,但是软件还存在问题
帮帮忙啊
谢谢了

有两个建议:
1. 如果你的Device可以通过Mass Storage方式连接到PC机上的话,建议用WinHex工具仔细的分析一下DBR及相关的部分,找到究竟是什么问题导致你的文件受损以及盘符无法Show出来,尽量多分析机台。
2. 如果不具有上面的功能的话,你可以通过AP把分区前面几百个扇区给Dump出来,然后进行分析;
=================
只有找到引起这种问题的根源,以及导致出现这种问题的原因,才能避免以后出现这种情况。因为引起这种问题的原因有多个,HW-文件系统-驱动以及Reset等操作。
此帖出自WindowsCE论坛
 
 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

15
 
引用 13 楼 guopeixin 的回复:

有两个建议:
1. 如果你的Device可以通过Mass Storage方式连接到PC机上的话,建议用WinHex工具仔细的分析一下DBR及相关的部分,找到究竟是什么问题导致你的文件受损以及盘符无法Show出来,尽量多分析机台。
2. 如果不具有上面的功能的话,你可以通过AP把分区前面几百个扇区给Dump出来…




不具有您说的第一个功能,现在我们升级软件以及其他的程序都是通过U盘的方式!
您说的AP是什么意思,我是新手,不大看的明白,呵呵^_^
此帖出自WindowsCE论坛
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

16
 
你的程序对FLASH文件夹只是读?没有写?
那WINCE系统实现了HIVE注册表吗?会回写系统相关信息吗?
有什么可能是对nand flash多次写操作的?
用的slc nand吧?2410不支持MLC的。
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

17
 
引用 14 楼 so927 的回复:
引用 13 楼 guopeixin 的回复:

有两个建议:
1. 如果你的Device可以通过Mass Storage方式连接到PC机上的话,建议用WinHex工具仔细的分析一下DBR及相关的部分,找到究竟是什么问题导致你的文件受损以及盘符无法Show出来,尽量多分析机台。
2. 如果不具有上面的功能的话,你可以通过AP把分区前面几百个扇区给Dump出来…



不具有您说的第一个功能,现在我们升级软件以及其他的程序都是通过U盘的方式!
您说的AP是什…

就是自己用EVC或者VS写一个小工具,将分区的前几百个sector给dump出来,分析一下
此帖出自WindowsCE论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

18
 
引用 16 楼 guopeixin 的回复:
引用 14 楼 so927 的回复:
引用 13 楼 guopeixin 的回复:

有两个建议:
1. 如果你的Device可以通过Mass Storage方式连接到PC机上的话,建议用WinHex工具仔细的分析一下DBR及相关的部分,找到究竟是什么问题导致你的文件受损以及盘符无法Show出来,尽量多分析机台。
2. 如果不具有上面的功能的话,你可以通过AP把分区前面几百个扇区给Dump出来…



不具有您说的第一个功能,现在我们升级软件以及其他的程序都是通过…


明白了,但是我怎么才能让他运行呢,现在又不能同步了
此帖出自WindowsCE论坛
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

19
 
引用 17 楼 so927 的回复:
引用 16 楼 guopeixin 的回复:
引用 14 楼 so927 的回复:
引用 13 楼 guopeixin 的回复:

有两个建议:
1. 如果你的Device可以通过Mass Storage方式连接到PC机上的话,建议用WinHex工具仔细的分析一下DBR及相关的部分,找到究竟是什么问题导致你的文件受损以及盘符无法Show出来,尽量多分析机台。
2. 如果不具有上面的功能的话,你可以通过AP把分区前面几百个扇区给Dump出来…


不具有您说的第一个功能,现在我们…

不好意思,最近比较忙,没有上论坛。
我不知道你说的不能同步是什么意思,但是你用EVC或者VS2005写一个小软件,让它直接来对Flash上的数据进行读取的话,应该是没有问题的吧?
此帖出自WindowsCE论坛
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

20
 
怎么启动这个小软件呢

我的意思是不能和电脑同步,并且我的系统没有显示器,
所以没有办法启动这个小程序

此帖出自WindowsCE论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表