分类: IT业界
2013-11-29 13:33:04
原文地址:大容量U盘文件系统分析(从FAT16到NTFS) 作者:mcuflower
当()代替软盘成为人们常备的移动存储工具时,很少有人知道其实并非通用的产品名称,它只是一个公司注册的闪存盘商标而已;也基本没人知道这种结构简单、体积小巧的USB接口闪存介质存储产品,最早是由中国人所发明的。
的鼻祖——
闪存盘虽然技术含量不高,但却是中国在存储领域二十年来的唯一原创性发明成果,它淘汰了、让ZIP和MD胎死腹中、甚至一定程度上威胁到了的统治地位。如今的闪存盘早已风靡全球,容量节节攀升、价格平易近人,甚至被当作广告的载体免费赠送……
如今讨论的选购意义并不大,相信大部分玩家都是人手N个了,本文主要向大家介绍如何更好的使用自己的大容量。
当今市售最大容量的128GB
容量的迅速膨胀,势必会对用户的使用习惯产生影响。当一个大肚能容的挂在腰间,各种数据的交换概率自然而然就会增加。且对多数人来说,也喜欢把数据放入中,并随身携带与大家交换数据(文档、照片、视频等)。遗憾的是,人们对如何正确使用没有概念?那么,本文就从磁盘存储的文件系统方面向读者阐明其间的差异!
FAT16:小默认的文件系统
文件系统是指文件命名、存储和组织的总体结构。作为最常见的Windows来说,它支持的文件格式就是我们所要研究的。FAT(16)、FAT32和NTFS都是Windows的文件系统。其实文件系格式也就是我们经常所说的“磁盘格式”或“分区格式”,总体都是一个概念,只不过“分区”只针对来说的,而文件系统是针对所有磁盘及存储介质的。
FAT,FAT32,NTFS,这些我们耳熟能详的分区格式,他们分别有什么用途呢?
● FAT16文件系统
最初的,也就是以MB为存储单位的,所使用的文件系统格式统一为FAT16,所以我们首先就来讲讲FAT16。
在说明FAT16文件系统之前,我们必须清楚FAT是什么?FAT(File Allocation Table)是“文件分配表”的意思。顾名思义,就是用来记录文件所在位置的表格,它对于磁盘的使用是非常重要的,假若丢失文件分配表,那么上的数据就会因无法定位而不能使用了。
FAT16使用了2个字节(也就是16位)的空间来表示每个扇区(Sector)配置文件的情形,故称之为FAT16。
FAT16由于受到先天的限制,因此每超过一定容量的分区之后,它所使用的簇(Cluster)大小就必须扩增,以适应更大的磁盘空间。所谓簇就是磁盘空间的配置单位,就象图书馆内一格一格的书架一样。每个要存到磁盘的文件都必须配置足够数量的簇,才能存放到磁盘中。FAT16各分区与簇大小的关系如下表:
分区大小 FAT16簇大小
16MB-127MB 2KB
128MB-255MB 4KB
256MB-511MB 8KB
512MB-1023MB 16KB
1024MB-2047MB 32KB
如果你在一个1GB容量的分区中存放50KB的文件,由于该分区簇的大小为16KB,因此它要用到4个簇才行。而如果是一个1KB的文件,它也必须使用一个簇来存放。那么每个簇中剩下的空间可否拿来使用呢?答案是不行的,所以在使用磁盘时,无形中都会或多或少损失一些磁盘空间。
2GB的分区使用FAT16系统格式化
● FAT16的缺点
磁盘分区最大只能到2GB。因此从Win98系统开始,FAT16已经基本被FAT32所取代,但当时刚刚起步,容量多为64MB、128MB,其默认分区只能是FAT16;
使用簇的大小不恰当。试想,如果一个只有1KB大小的文件放置在一个1000MB的磁盘分区中,它所占的空间并不是1KB,而是16KB,足足浪费了15KB!一般文本文档及HTML碎文件的体积多是个位数,如果用来存储这些文件的话,空间浪费就极为严重了。
能解决这两个问题的,就是FAT32文件系统了。
FAT32:当今主流主流文件系统
● FAT32文件系统
FAT32使用4个字节(也就是32位)的空间来表示每个扇区(Sector)配置文件的情形,故称之为FAT32。FAT16的分区容量上限是2047MB,而FAT32的分区容量下限是512MB,不同的上限不同,例如Win2000最大支持32GB FAT32分区,而WinXP最大可达2TB FAT32分区。
FAT32相比FAT16,优点如下:
可支持大于2GB的分区。最大可达2TB,即便是目前最大容量的都能支持,更别说了;
空间利用率更高。FAT32采用了更小的簇,可以更有效率的保存数据,比如两个分区大小都为2GB,一个分区采用了FAT16文件系统,另一个分区采用了FAT32文件系统。采用FAT16的分区的簇大小为32KB,而FAT32分区的簇只有4KB的大小。这样在存储碎文件时FAT32就比FAT16的存储效率要高很多,通常情况下可以提高15%。
安全新更好。FAT32文件系统可以重新定位根目录和使用备份副本。另外FAT32分区的启动记录被包含在一个含有关键数据的结构中,减少了系统崩溃的可能性。
灵活性更高。FAT32分区上的根文件夹是普通的簇链,因此它可以位于驱动器上的任何位置。以前对根文件夹数量的限制不复存在。此外,可以禁用文件分配表镜像,这样就可以让文件分配表的副本而不是让第一个文件分配表处于活动状态。这些功能允许您动态重调FAT32分区的大小。不过要注意,虽然FAT32的设计允许这一功能,但微软自己的分区软件不支持此功能,需要使用第三方分区软件。
使用FAT32格式化2GB ,簇更小
● FAT32的缺点
虽然对于最大分区容量的支持上面,FAT32 2TB最大分区的容量时至今日仍不过时,但FAT32只能存储最大4GB的单个文件,所以FAT32无法存放光盘ISO镜像、高清视频、各种图形作品文件等等,这是其致命的弊端。
NTFS:主流分区 不适合使用
● NTFS文件系统
NTFS(New Technology File System)是Windows NT核心和高级网络环境的文件系统。NTFS的目标是提供比FAT32更高的可靠性,并消除FAT文件系统中的种种限制。
NTFS文件系统除了支持更大的分区、更大的文件、更节约空间外,还提供了FAT文件系统不敢想像的众多功能。主要有:长文件名、压缩分区、事件追踪、文件索引、高容错性、数据保护和恢复、加密访问……
NTFS支持大于4GB的文件
由于NTFS分区已经成为目前磁盘的绝对主流格式,XP、Vista、Win7默认都会将分区格式化为NTFS系统,因此关于NTFS的种种优势和特性就没必要多做强调了,可以说NTFS是目前最好的磁盘文件系统,但为什么和各种存储卡很少使用NTFS文件系统呢?
● NTFS在闪存上的缺陷
NTFS虽然有诸多优点,但这些都是针对传统机械而设计的,对于新兴的Flash闪存材料不一定适用。NTFS分区是采用“日志式”的文件系统,因为要记录磁盘的详细读写操作,对这种快闪存储介质会造成较大的负担,比如同样存取一个文件或目录,在NTFS系统上的读写次数就会比FAT32来得多,理论上NTFS格式的比较容易损坏,而且400MB以下的分区也比FAT16更浪费空间。
NTFS这些额外的功能无论对和都会造成不同程度的伤害,因此新一代专门针对进行优化,通过各种手段减少读写次数和碎片的产生。而对于来说,本身USB的带宽就有限,NTFS文件系统频繁读写占据通道会让磁盘性能降低,为此微软专门针对移动存储设备开发了ExFAT文件系统。
ExFAT:专用文件系统 但兼容性不好
对于闪存,NTFS文件系统会有伤害,因此微软推出了全新的ExFAT文件系统。
● ExFAT文件系统
顾名思义,ExFAT是对FAT文件系统的一种延续,全称Extended File Allocation Table File System,是微软在Windows Embeded 5.0以上(包括Windows CE 5.0、6.0、Windows Mobile 5、6、6.1等手持)中引入的一种适合于闪存的文件系统。ExFAT消除了FAT16/32的局限性和缺点,又没有NTFS那么多闪存永远都不会用到的功能,适合各种移动存储卡和使用。
相对FAT16/32文件系统,ExFAT有如下优点:
增强了台式与移动设备的互操作能力
分区大小和单文件大小最大可达16EB(16×1024×1024TB)
簇大小非常灵活,最小0.5KB,最高达32MB
采用了剩余空间分配表,空间利用率更高
同一目录下最大文件数可达65 536个
支持访问控制
支持TFAT(WINCE早期文件系统)
可以看出,ExFAT就是闪存专用的文件系统,只有和存储卡才能格式化成ExFAT,传统是无法格式化成ExFAT格式的,因为ExFAT的特性其实并不比NTFS强,但却比NTFS及FAT32更适合闪存使用。
不过,ExFAT作为一种全新的文件系统,在上的兼容性却不太好,目前主流的XP和Vista默认都不支持ExFAT,XP需升级至SP3补丁、Vista需升级至SP1补丁才能支持它。当然微软也提供了ExFAT的单独更新文件,Win7默认支持。
全文总结:到底用什么文件系统好?
虽然四种文件系统的存储方式和特性各不相同,但对于传输速度并不快的存储卡和来说,实际传输性能却大同小异,理论测试数据相差不过1MB/s,长时间使用可能会有差别。因此,使用何种文件系统的主要因素还是其容量及用途,下面笔者就简单归纳总结下四种文件系统的优劣。
● FAT16:
优点:兼容性最好,某些数码设备可能对FAT32和NTFS格式的存储卡支持不太好,因此只能使用FAT16
缺点:最大仅支持2GB分区,空间浪费大
备注:赶紧看看您的是不是FAT格式,如果是就改用FAT32吧
● FAT32:
优点:兼容性好
缺点:单个文件不能超过4GB,不支持512MB以下容量的
备注:如果容量达8GB以上,发现4GB文件拷不进去的话,可以考虑换用NTFS或ExFAT格式了
● NTFS:
优点:兼容性好,支持任意大小的
缺点:会缩短闪存寿命
备注:反正超便宜,不怕坏的朋友们使用NTFS其实挺好
● ExFAT:
优点:专为闪存和设计,空间浪费小
缺点:兼容性差,XP和Vista系统需要更新补丁才能支持
备注:很多人的都不开自动更新,自然不支持ExFAT,准备好补丁文件吧