磁盘簇大小的设置

磁盘簇大小的设置2007-04-28 17:43 A 在说明FAT文件系统之前,我们必须清楚FAT是什么?FAT(File Allocation Table)是“文件分配表”的意思。顾名思义,就是用来记录文件所在位置的表格,它对于硬盘的使用是非常重要的,假若丢失文件分配表,那么硬盘上的数据就会因无法定位而不能使用了。不同的操作系统所使用的文件系统不尽相同,在个人计算机上常用的操作系统中,MS-DOS 6.x及以下版本使用FAT16;OS/2使用HPFS;Windows NT则使用NTFS;而MS-DOS 7.10及ROM-DOS 7.10同时提供了FAT16及FAT32供用户选用。其中我们接触最多的是FAT16、FAT32文件系统。

一、FAT16文件系统
FAT16使用了16位的空间来表示每个扇区(Sector)配置文件的情形,故称之为FAT16。
FAT16由于受到先天的限制,因此每超过一定容量的分区之后,它所使用的簇(Cluster)大小就必须扩增,以适应更大的磁盘空间。所谓簇就是磁盘空间的配置单位,就象图书馆内一格一格的书架一样。每个要存到磁盘的文件都必须配置足够数量的簇,才能存放到磁盘中。FAT16各分区与簇大小的关系如下表:

分区大小 FAT16簇大小
16MB-127MB 2KB
128MB-255MB 4KB
256MB-511MB 8KB
512MB-1023MB 16KB
1024MB-2047MB 32KB

如果你在一个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-32MB 2KB 不支持
32MB-127MB 2KB 512bytes
128MB-255MB 4KB 512bytes
256MB-259MB 8KB 512bytes
260MB-511MB 8KB 4KB
512MB-1023MB 16KB 4KB
1024MB-2047MB 32KB 4KB
2048MB-8GB 不支持 4KB
8GB-16GB 不支持 8KB
16GB-32GB 不支持 16KB
32GB以上 不支持 32KB

以当前硬件所能支持的情况下,如将8GB硬盘划分为单个分区的话,使用的簇的大小也只有4KB,比起以往的FAT16来说,真是节省了许多空间。

三、FAT32使用上的限制
看到这些优点,你一定迫不及待地想将FAT16转换为FAT32。不过在转换之前,要注意下面几点:
(1)与其他的PC操作系统不兼容。当前支持FAT32的操作系统仅有MS-DOS 7.10、ROM-DOS 7.10、FreeDOS和Windows 2000以上版本,而其他操作系统则根本不能读取FAT32的分区。例如你以MS-DOS 6.x等旧版本的DOS启动盘开机的话,你硬盘中的FAT32分区就会凭空消失,完全看不到这个分区。另外,如果你要使用多重开机来启动多种不同的操作系统,建议你不要将C:这个分区改为FAT32。因为有一些操作系统会强迫一定要从C:这个主要分区来安装、开机,如果你将C:改为FAT32,而该操作系统不认FAT32,那就不能开机了。
(2)有些磁盘工具、防毒软件还不认得FAT32,可能会造成转换后,磁盘工具软件不能对FAT32的分区进行磁盘处理工作,而防毒软件会不认得这种文件系统,误判为中毒现象。
(3)一些版本较旧的软件不能在FAT32的分区中执行,例如Office 95等。
(4)小于512MB的分区一般不让转换为FAT32。虽说我们从前面的列表中发现小于512MB的分区只使用512Bytes大小的簇,但是在Windows 98中,你只能转换512MB以上的分区。如果想转换32MB到512MB这间的分区,必须使用CVT.EXE中的/MIN命令,如CVT D: /CVT32 /MIN,或FDISK /FPRMT。
(5)不能在FAT32分区中做磁盘压缩,即使使用Windows 98中的磁盘压缩也是行不通的。
(6)如果你主板的BIOS支持"suspend-to-disk"的功能,那么请将这项功能关闭,因为在FAT32分区中是不能使用的。
(7)Windows 98所提供的转换工具只能将FAT16转换为FAT32,并不能再从FAT32转换回FAT16。要转换回来只有:重新进行分区(Partition)、格式化(Format),然后重新安装系统、应用软件等。
要从FAT32转换回FAT16,还可以借助一项工具:PowerQuest的Partition Magic 3.0或以上版本。这是一套能让你自由改变分区大小、文件系统,而毫不损坏磁盘数据的一套软件。你可以利用这套软件将FAT32转换为FAT16,而不必重

新格式化你心爱的硬盘。如果你没有该软件,那么要有“准备后悔”的念头,请在FAT16转换FAT32前先做好备份。同时我们提醒大家,如果您的计算机配置不是很高(即不是PⅡ或同一级别的CPU),最好不要将分区表转换成FAT32,因为这样会影响硬盘读取速度的。


B. 簇是指可分配的用来保存文件的最小磁盘空间,计算机中所有的信息都保存在簇中。簇越小,保存信息的效率就越高。在FAT16文件系统中,每个分区最多有65525个簇,簇大小默认值为32KB;在FAT32文件系统中使用的簇比FAT16小,默认为4KB。那么在NTFS文件系统中磁盘簇的大小设为多少才合适呢?下面看看大家的讨论

一、在NTFS文件系统中如何设置簇大小

默认的情况下,在格式化的时候如果没有指定簇的大小,那么系统会根据分区的大小选择默认的簇值。其实在NTFS文件系统中格式化的时候,可以在“Format”命令后面添加“/a:UnitSize ”参数来指定簇的大小,UnitSize表示簇大小的值,NTFS支持512/1024/2048/4096/8192/16K/32K/64K。比如“format d:/fs:NTFS /a:2048”,表示将D盘用NTFS文件系统格式化,簇的值为2048B。

二、使用默认的设置

对于初学者来说,其实没有必要去手工设置簇的大小,因为一般情况下使用默认的设置就可以了。比如在用NTFS文件系统格式化分区的时候,系统会根据分区的大小自动选择默认的簇大小,比如4KB。

三、簇的大小因硬盘分区大小而异

在NTFS文件系统中,当分区的大小在2GB以下时,簇的大小应该比相应的FAT32簇小,即小于4KB;当分区的大小在2GB以上时(2GB~2TB),簇的大小应该都为4KB。

四、使用压缩功能对簇大小的要求

在Windows 2000/XP系统中,为了使用压缩功能来节省磁盘空间,必须遵循两个条件:

1.磁盘分区必须是NTFS文件系统;
2.分区中簇的大小不得超过4KB(默认簇的大小,即4096字节)。

五、簇的大小的影响

在NTFS文件系统中,簇的大小会影响到磁盘文件的排列,设置适当的簇大小可以减少磁盘空间丢失和分区上碎片的数量。如果簇设置过大,会影响到磁盘存储效率;反之如果设置过小,虽然会提高利用效率,但是会产生大量磁盘碎片。


相关文档
最新文档