【IT168 技术】Windows系统是一代又一代有经典的Windows xp 也有名声不大好的 Windows Vista 下面介绍一下NTFS文件系统优化方法,希望能对您有些帮助。
由于影响NTFS文件系统的性能有很多的因素:比如硬盘簇区的大小,MFT和页面文件的碎片化程度,其所处于硬盘分区的位置,NTFS卷区的压缩,NTFS的卷区来源(比如是否是从FAT卷区转换来的)等。所以说到要对NTFS文件系统的性能进行优化,我们就必须优化所有这些影响NTFS文件系统性能的全局变量。当然还有一些其他的方法比如整理硬盘碎片也可以在一定的限度上改善磁盘的工作性能。
合理定义磁盘簇区的大小
簇区是一个磁盘存储的基本单位。当我们在建立文件时,即使该文件只有一个字节大小,如果是在FAT文件系统上那么系统还是会分配一个簇区来保存该文件。而在NTFS文件系统下,如果文件足够小,那么文件可能就会被保存在MFT主文件表中而不需要分配额外的簇区来保存。如果当文件的大小逐渐增大而超出了第一个簇区的容量,那么系统会自动分配一个额外的簇区来使用。从这里我们可以看到,如果簇区的空间越大,那么浪费的空间也可能越多。但是,磁盘的总体性能会比较好。
下面的表里的数据就是在Windows NT/2000/XP下格式化NTFS分区所用到的默认值
磁盘大小(逻辑卷区) 簇区大小 扇区
512 MB 或者更小 512 bytes 1
513 MB - 1,024 MB (1 GB) 1,024 bytes (1 KB) 2
1,025 MB - 2,048 MB (2 GB) 2,048 bytes (2 KB) 4
2,049 MB 和更大 4,096 bytes (4 KB) 8
当我们在格式化磁盘分区时,我们可以在格式化对话框里制定簇区的大小,如:512字节,1, 1 KB, 2 KB, 4 KB, 8 KB, 16 KB, 32 KB, 64 KB或者在使用FORMAT命令时在参数里指定簇区大小。
那么我们需要如何决定簇区的大小呢?最简单的一种方法就是用磁盘的大小(以千字节为单位)来除以文件的总数量。另一种方法则是在格式磁盘分区时根据将要保存的文件类型来做决定,比如如果我们知道自己将会在该分区收录很多比较大的文件,比如avi等,那么建立大一些的簇区可以提高磁盘的工作性能。如果硬盘分区上保存的是比较多的小文件比如网页文件,文本文件等等,那么建立比较小一点的簇区则不会让我们浪费太多的磁盘空间。
注意:如果在磁盘分区上, 有大于4KB的簇区时,那么文件系统将不会支持数据压缩。
MFT主文件表的保留和碎片化
由于MFT保存的是每个分区经常用到的系统文件和索引,所以MFT的性能会对整个分区造成相当大的影响。在默认状况下,NTFS文件系统优化不好会保留一部分磁盘的空间作为MFT专用的缓冲区域,其大小通常是磁盘分区大小的 12.5%. 但是,如果硬盘的文件太多,那么MFT的空间将可能超出保留的磁盘空间而出现碎片化。另外,当用户删除文件时,NTFS通常不会使用被删除文件的空间来保存新文件。它只是简单把MFT里的文件记录标记成被删除,同时还是会用新的空间来保存新文件。虽然这样我们可以得到被删除文件的恢复可能性,同时也加重了MFT的碎片化。
文件系统优化注意:
当MFT的碎片化越厉害,那么硬盘读取文件数据将花费越多的时间,结果导致系统的性能总体降低。
从Windows NT 4.0 SP4开始,我们就可以通过对注册表的修改来定义MFT区的大小:
Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem
NtfsMftZoneReservation 的类型是DWORD,它的值可以是从1到4。不同的值将容许你在格式化磁盘时定义MFT分区和磁盘分区的大小比例(12.5%, 25%, 37.5%, 50%)
以上介绍的文件系统优化技巧,希望对大家有所帮助。