磁盘优化:NTFS文件系统优化概述

磁盘优化:NTFS文件系统优化概述,第1张

磁盘优化:NTFS文件系统优化概述,第2张

前言:
前几天偶然和几个朋友讨论如何优化磁盘的性能。虽然这方面有很多功能强大的工具,但我总觉得除了知道如何使用这些工具之外,还需要了解一些关于磁盘分区的基础知识,所以写了这篇文章与大家分享。影响NTFS文件系统性能的因素有很多,如硬盘簇的大小、MFT和页面文件的碎片化程度、硬盘分区的位置、NTFS卷的压缩、NTFS卷的来源(如是否由FAT卷转换而来)等。因此,在优化NTFS文件系统的性能时,我们必须优化所有这些影响NTFS文件系统性能的全局变量。当然还有一些其他的方法,比如对硬盘进行碎片整理,也可以在一定程度上提高磁盘的工作性能。

定义一堆磁盘区域的合理大小。

簇是磁盘存储的基本单位。当我们创建一个文件时,即使文件只有一个字节大小,如果它在FAT文件系统上,系统仍然会分配一个簇区域来保存文件。在NTFS文件系统下,如果文件足够小,可以保存在MFT主文件表中,而不需要分配额外的簇区域来保存。如果文件大小逐渐增加并超过第一个簇区的容量,系统将自动分配一个额外的簇区供使用。从这里我们可以看出,如果集群区域的空房间越大,浪费的空房间就越多。但是,磁盘的整体性能会更好。

下表中的数据是用于在Windows NT/2000/XP下格式化NTFS分区的默认值。

磁盘大小(逻辑卷)群集大小扇区
512 MB或更小512字节1
513mb-1,024mb (1gb) 1,024字节(1kb) 2
1,025mb-2,048mb (2gb


我们在格式化磁盘分区时,可以在format对话框中设置簇的大小,如: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 \ current Control set \ Control \ file SYSTEM

NtfsMftZoneReservation的类型是DWORD,其值可以是1到4。不同的值将允许您在格式化磁盘时定义MFT分区和磁盘分区的大小比例(12.5%、25%、37.5%、50%)。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 磁盘优化:NTFS文件系统优化概述

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情