帮助中心

当前位置:首页 > 帮助中心 > U盘这几个问题你遇到过吗

U盘这几个问题你遇到过吗

日期:2011-11-13 | 时间:10:14
 使用U盘我们会经常遇到一些问题:

1.U盘为什么出现"0"字节,无法格式化,文件系统变成RAW ?
2.为什么经常会出现丢数据?或者拷的电影或图片不正常?
3.我的U盘里面有坏块是不是就坏了?
4.量产工具到底是什么样的工具?具体有哪些作用?
问题是只有四个,但要解释原因需要从最初步的flash结构讲起。首先我们要知道U盘所用的FLASH是NAND FLASH,与之相对应的是NOR FLASH(有兴趣的朋友可以在网上找些资料看一下他们的区别),由于Nand Flash擅长存储数据所以被我们U盘采用作为存储介质(就是U盘里面那个长块块,而那个小的就是主控芯片),Nand Flash内部结构(如图随便在网上找的一个)是由块(block)组成,块又由页(page)组成,页又由扇区(sector)组成,最后一项很少有资料去提到它,我们知道就可以了,而不同容量的片子只是构成块、页、扇区数量多少的区别,打个比方,图上的512M片子是由4096块组成,每块由64 ]页构成;换个2G的K9GAG08U0M片子来说,它就是由4096块组成,每块又由128页组成,组成数量差异。

在清楚了Flash的内部结构之后,我们就知道了Flash的容量就是这些单个块容量的集合,也就是说一个U盘所用的片子,坏块越多容量就会越低,而判断这些坏块就是由量产来完成(具体是怎么判断在后面我会讲到)。这时就会有朋友疑问,为什么我的片子是0坏块,1G的片子也做不到1G(1024M,而不是某些朋友认为的1000M,二进制算的而不是十进制),原因在哪里?这就是我要说的重点,第一个问题的答案:我们知道买一台电脑光有硬件是不能用的,我们的U盘也一样,也需要装系统(软件),只是这个系统叫配置表信息,它就像我们的电脑系统需要占用硬盘空间一样,这个配置信息也是放在Flash的块里,需要拿一定数量的块来存放它,也就是说1G的片子即使没有坏块也不能做出1024M容量,那是因为文件系统占用了;如果我们扫描的时候没有剔除坏块或者放配置信息的块由好变成坏的时候,这个连贯的运行程序就会被破坏掉,大家可以想到这个软件系统是没办法正常运行的,这时就会出现0字节(RAW系统),由于任何电子元器件都有寿命,所以好块总会迟早变成坏块,这就是为什么再好的方案也不可以避免0字节问题。

我们现在知道了如果有坏块是用来存放配置信息就会出现0字节,如果用来存储我们用户拷贝的资料会怎样呢?答案是数据丢失,表现的就是问题2所描述的现象。还有就是有厂家在生产时做的扩容U盘,容量是虚拟的,你可以拷进去标识容量的文件,但是再读出来也是丢失数据。

在回答了前面两个问题后,我们来讲一下量产工具,量产工具其实就是一个集扫描和文件系统装载于一身的一种工具,他首先对整个flash进行扫描,来判断所有的块是好还是坏,至于各家方案的级别,就是相应的扫描严格程度,根据片子质量好坏来选择是否全扫,(我推荐终端用户全部扫描),怎么判断是好块还是坏块呢?大家都知道,块是用来存储二进制数据的,我要判断这个块好坏,最直接有效的办法就是往里面写数据再读出来,如果读出的与写入的有差异,就可以判断是坏块,反之,没有差异就是好块,这个数据就叫随机码(是随机产生的数据),扫描完成后,好坏块都会被标记,坏块被剔除,好块用来存储,包括文件系统占用和用户存储两个部分。当然这里面还包括ECC纠错,至于什么是ECC纠错以后有时间可以再讲。
当然,量产工具还包括其他如清空、格式化等等这些功能,但是主要就是扫描和文件系统装载。

结合上面的讲解,我们基本可以自己搞定我们的问题U盘了,"0"自己的U盘是可以通过重新量产得到修复的,即使你的片子里面有坏块,只要都被扫描出来了,也是不会影响你正常使用的(因为Flash原厂出的正片也是允许有千分之三的坏块)。除非片子是全坏块,那就表明暂时是没有办法修好的了,你需要换个新的U盘了。

(责任编辑:大白菜官网 www.winbaicai.com)

大白菜超级U盘启动盘制作工具