细说FAT16与FAT32区别分享

在说明FAT文件系统之前,我们必须清楚FAT是什么?FAT(FileAllocationTable)是“文件分配表”的意思。顾名思义,就是用来记录文件所在位置的表格,它对于硬盘的使用是非常重要的,假若丢失文件分配表,那么硬盘上的数据就会因无法定位而不能使用了。不同的操作系统所使用的文件系统不尽相同,在个人计算机上常用的操作系统中,MS-DOS6.x及以下版本使用FAT16;OS/2使用HPFS;WindowsNT则使用NTFS;而MS-DOS7.10及ROM-DOS7.10同时提供了FAT16及FAT32供用户选用。其中我们接触最多的是FAT16、FAT32文件系统。 一、FAT16文件系统 FAT16使用了16位的空间来表示每个扇区(Sector)配置文件的情形,故称之为FAT16。 FAT16由于受到先天的限制,因此每超过一定容量的分区之后,它所使用的簇(Cluster)大小就必须扩增,以适应更大的磁盘空间。所谓簇就是磁盘空间的配置单位,就象图书馆内一格一格的书架一样。每个要存到磁盘的文件都必须配置足够数量的簇,才能存放到磁盘中。FAT16各分区与簇大小的关系如下表: 分区大小FAT16簇大小 16MB-127MB2KB 128MB-255MB4KB 256MB-511MB8KB 512MB-1023MB16KB 1024MB-2047MB32KB 如果你在一个1000MB的分区中存放50KB的文件,由于该分区簇的大小为16KB,因此它要用到4个簇才行。而如果是一个1KB的文件,它也必须使用一个簇来存放。那么每个簇中剩下的空间可否拿来使用呢?答案是不行的,所以在使用磁盘时,无形中都会或多或少损失一些磁盘空间。 由上可知,FAT16文件系统有两个最大的缺点: (1)磁盘分区最大只能到2GB。当前只要你添购计算机的话,想必其中的硬盘大小必定至少有2GB,而3.2GB、4.3GB以上的硬盘比比皆是,且物美价廉。FAT16文件系统已不能适应当前这种大容量的硬盘,必须被迫分区成几个磁盘空间。而分区磁盘的大小又牵扯出簇的问题来,可谓影响颇大。 (2)使用簇的大小不恰当。试想,如果一个只有1KB大小的文件放置在一个1000MB的磁盘分区中,它所占的空间并不是1KB,而是16KB,足足浪费了15KB!当前流行的HTML文件,其大小几乎多为1KB、2KB,而制作一个网站往往用到数十个HTML文件。如果你的硬盘中有100个这种小文件的话,你浪费的磁盘空间可从700KB(511MB的分区),到3.1MB(2047MB的分区)。 以上这两个问题常常使得用户在“分多大的分区,才能节省空间,同时又可使硬盘的使用更加方便有效”的抉择中徘徊不定。 二、FAT32文件系统 为了解决FAT16存在的问题,开发出FAT32系统。FAT32使用了32位的空间来表示每个扇区(Sector)配置文件的情形。利用FAT32所能使用的单个分区,最大可达到2TB(2048GB),而且各种大小的分区所能用到的簇的大小,也是恰如其分,上述两大优点,造就了硬盘使用上更有效率。现将与分区与簇的大小汇整如下,我们可仔细做个比较: 分区大小FAT16簇大小FAT32簇大小 16MB-32MB2KB不支持 32MB-127MB2KB512bytes 128MB-255MB4KB512bytes 256MB-259MB8KB512bytes 260MB-511MB8KB4KB 512MB-1023MB16KB4KB 1024MB-2047MB32KB4KB 2048MB-8GB不支持4KB 8GB-16GB不支持8KB 16GB-32GB不支持16KB 32GB以上不支持32KB 以当前硬件所能支持的情况下,如将8GB硬盘划分为单个分区的话,使用的簇的大小也只有4KB,比起以往的FAT16来说,真是节省了许多空间。 三、FAT32使用上的限制 看到这些优点,你一定迫不及待地想将FAT16转换为FAT32。不过在转换之前,要注意下面几点: (1)与其他的PC操作系统不兼容。当前支持FAT32的操作系统仅有MS-DOS7.10、ROM-DOS7.10、FreeDOS和Windows2000以上版本,而其他操作系统则根本不能读取FAT32的分区。例如你以MS-DOS6.x等旧版本的DOS启动盘开机的话,你硬盘中的FAT32分区就会凭空消失,完全看不到这个分区。另外,如果你要使用多重开机来启动多种不同的操作系统,建议你不要将C:这个分区改为FAT32。因为有一些操作系统会强迫一定要从C:这个主要分区来安装、开机,如果你将C:改为FAT32,而该操作系统不认FAT32,那就不能开机了。 (2)有些磁盘工具、防毒软件还不认得FAT32,可能会造成转换后,磁盘工具软件不能对FAT32的分区进行磁盘处理工作,而防毒软件会不认得这种文件系统,误判为中毒现象。 (3)一些版本较旧的软件不能在FAT32的分区中执行,例如Office95等。 (4)小于512MB的分区一般不让转换为FAT32。虽说我们从前面的列表中发现小于512MB的分区只使用512Bytes大小的簇,但是在Windows98中,你只能转换512MB以上的分区。如果想转换32MB到512MB这间的分区,必须使用CVT.EXE中的/MIN命令,如CVTD:/CVT32/MIN,或FDISK/FPRMT。 (5)不能在FAT32分区中做磁盘压缩,即使使用Windows98中的磁盘压缩也是行不通的。 (6)如果你主板的BIOS支持”suspend-to-disk”的功能,那么请将这项功能关闭,因为在FAT32分区中是不能使用的。 (7)Windows98所提供的转换工具只能将FAT16转换为FAT32,并不能再从FAT32转换回FAT16。要转换回来只有:重新进行分区(Partition)、格式化(Format),然后重新安装系统、应用软件等。 要从FAT32转换回FAT16,还可以借助一项工具:PowerQuest的PartitionMagic3.0或以上版本。这是一套能让你自由改变分区大小、文件系统,而毫不损坏磁盘数据的一套软件。你可以利用这套软件将FAT32转换为FAT16,而不必重新格式化你心爱的硬盘。如果你没有该软件,那么要有“准备后悔”的念头,请在FAT16转换FAT32前先做好备份。同时我们提醒大家,如果您的计算机配置不是很高(即不是PⅡ或同一级别的CPU),最好不要将分区表转换成FAT32,因为这样会影响硬盘读取速度的。

http://www.dengb.com/DOS_BAT/305577.htmlwww.dengb.comtruehttp://www.dengb.com/DOS_BAT/305577.htmlTechArticle在说明FAT文件系统之前,我们必须清楚FAT是什么?FAT(FileAllocationTable)是“文件分配表”的意思。顾名思义,就是用来记录文件所在位置的表…

—-想了解更多的bat相关脚本写法关注

(0)
上一篇 2022年9月12日 上午11:18
下一篇 2022年9月13日 上午8:05

相关推荐

发表回复

登录后才能评论