分享

磁盘格式化合理设置簇大小

 轻轻松松0 2015-06-07

很 多使用电脑多年的大虾,已经“折腾”死了多块硬盘,也曾无数次对硬盘重新分区、重新格式化、重装系统,其熟练程度达到了“闭上眼也能搞定”的境界,但他们 在进行这些操作时,仅仅是重复劳动而已,往往忽略了一些细节问题,但这些似乎“不足挂齿”的小问题却是影响整个磁盘性能的关键所在,比如笔者今天要给大家 介绍的“簇”……
硬盘里的文件如何存储
大家都知道硬盘上存储的数据都是以“文件”的形式出现的,不同的文件容量不同,可以大到几十甚至上百GB,也可以小到几个字节,它们是如何被存放到硬盘中的呢?
其实硬盘在经过低级格式化、分区、高级格式化之后,为了便于读取和管理,它的每个分区都已经被划分为多个小块,而每一小块就被称为一个“簇” (Cluster)。对于某个文件来说,如果它的容量大于单个簇的大小,那么该文件会存储到多个簇中,如果它的容量小于单个簇的大小,那么该文件会独占这 个簇,而别的文件在存储时不得再被放到该簇中(见图1)。

磁盘格式化合理设置簇大小 - point - points@yeah 的博客


这就好比一栋楼(硬盘)被划分为多个楼层(分区),而每个楼层又被划分为多间套房(簇),划分之后我们要找住在其中的住户,只需要知道其楼层和房间号即 可。如果一户人家中的成员(文件大小)很多,那有可能会买两套房子,如果家庭成员较少,一套房子仍有空余,则房子里的剩余空间也不会让隔壁邻居搬来住。
我的硬盘分区使用的簇大小是多少
知道“簇”代表了可以分配用来保存文件的最小磁盘空间量后,很多朋友就会有疑问了—怎么我在格式化硬盘和安装系统时没有遇到过“簇”这个东东呢?它的容量究竟是多大呢?
原来大家在使用Format命令格式化磁盘分区以及重装系统的时候,系统将使用默认值来分配单个簇的容量,所以大家不会察觉。这个默认值的大小跟你使用的 文件系统(如FAT32、NTFS)以及磁盘分区的容量有关。以目前使用比较广泛的FAT32和NTFS文件系统为例,单个簇的默认容量大家可以参考下面 两个表格:
表1:FAT32默认簇容量
磁盘分区大小 默认簇容量
512MB-8GB 4KB
8GB-16GB 8KB
16GB-32GB 16KB
32GB或更大 32KB


一般情况下,大家可以对应上表判断自己每个硬盘分区所使用的簇大小。不过有个比较特殊的情况需要大家注意:如果在Windows XP/2003中使用Convert命令(见图2)将某磁盘分区由FAT32转换为NTFS格式,那么Windows总是使用512字节的簇大小,这是因 为FAT32结构按512字节边界进行对齐,更大的簇大小则不允许转换。

磁盘格式化合理设置簇大小 - point - points@yeah 的博客


为什么转换分区为NTFS后剩余空间变大了
很多朋友都有使用Convert命令成功将磁盘分区由FAT32格式转换为NTFS格式的经验,并且转换后惊喜地发现该磁盘分区的剩余空间容量变大了。这究竟是为什么呢?要回答这个问题,让我们继续来研究一下上面的两个表格,从中至少可以发现两点规律:
1.对于同属FAT32或NTFS文件系统的磁盘分区,分区容量越大则其对应的默认簇容量越大。
2.使用NTFS文件系统的磁盘分区对应的默认簇容量要比使用FAT32的磁盘分区对应的默认簇容量小。
根据这两个规律,你能得出什么结论呢?不管你的磁盘分区采用的是FAT32还是NTFS,某个磁盘分区的容量越大,其对应的簇容量则越大,那么存放在其中 的文件就越容易占用较大的硬盘空间;而采用NTFS格式文件系统的磁盘分区与FAT32相比,由于其默认簇容量较小,那么存放在其中的文件就越节省空间。
笔者举个简单的例子:对于同样一个2GB大小的磁盘分区,如果采用FAT32文件系统,其对应的簇容量为4KB,如果采用NTFS文件系统,则其对应的簇 容量为2KB。假如该分区存储了多个大小为2KB的文件,那么单个文件在FAT32系统中会占用单个簇,且每个簇还剩余2KB空间,当然这2KB空间是不 能被其他文件填充的。而在NTFS文件系统中,则正好是单个文件占用单个簇。很明显,文件的存储效率在NTFS文件系统中要优于FAT32中。
而采用Convert命令将磁盘分区由FAT32转换为NTFS文件系统,不管分区容量为多大,其簇大小均为512字节,这样一来,其文件存储效率则非常 之高了。这就是为什么FAT32转换为NTFS文件系统之后,磁盘的剩余空间变大的原因。实际上,从FAT16转换为FAT32是一样的结果,道理也一 样。
磁盘分区的簇大小设置多少最合理?
既然簇大小越小,磁盘存储文件的效率越高,很多朋友就纳闷了,那我何不将簇大小设置得越小越好?怎么还存在“设置多少合理”的问题?
笔者打个简单比方,如果某个存放中药的柜子(硬盘),如果其抽屉(簇)越小,这样虽然可以让这个柜子存放更多种类的中药,但抽屉越小,那么同时也意味着它 的抽屉数就越多,这样就会加大迅速找到某种中药的难度,增加查找时间。也就是说,如果簇大小设置得过低,会在一定程度上降低磁盘读取数据的性能。
那么对于磁盘分区的簇大小,究竟设置多少可以既让其存储效率最高,又保证磁盘读取数据的性能最优呢?其实这是一个矛盾的问题,我们只有根据实际情况来权限,简单地讲主要有以下两个原则:
1.如果某个磁盘分区存放的文件多数为小文件,比如JPG图片、TXT文档等,建议将簇大小设置得更小,这样可以提高硬盘的存储效率。
2.如果某个磁盘分区存放的文件多数为大文件,比如电影、MP3等,那么建议将簇大小设置得尽可能大,这样可以增强磁盘读取数据的性能,同时也不会浪费太多空间。
实例:为自己的磁盘分区设置最合理的簇大小
对于多数用户来讲,硬盘的规划可能是这样的:C为系统盘,D用于安装常用软件和游戏,E用来存放歌曲、电影,F则做备份之用。如果所有磁盘分区都采用 FAT32文件系统,那么建议C、D、E、F分区分别设置簇大小为:4KB、8KB、32KB、16KB;如果所有磁盘分区都采用的NTFS系统,那么建 议C、D、E、F分区分别设置簇大小为:512B、1KB、4KB、2KB。以Windows XP为例,其具体设置方法为:
第一步:依次打开“控制面板→管理工具→计算机管理”程序,切换到“存储→磁盘管理”标签,这里我们能看到各个分区采用的文件系统以及其运行状况(见图3)。

磁盘格式化合理设置簇大小 - point - points@yeah 的博客


第二步:分别选中不同的分区,右击并选择“格式化”菜单,在“分配单位大小”下拉列表中,选择合适的簇大小值,最后单击“确定”即可(见图4)。

磁盘格式化合理设置簇大小 - point - points@yeah 的博客


小提示
Windows自带的磁盘管理功能要更改簇大小则必须格式化磁盘分区,如果你不想为此丢失存储数据,可以使用PQ Magic等磁盘无损转换工具进行设置:运行PQ Magic后,在其主界面右击需要调整的分区名称,选择“高级→调整簇的大小”菜单,然后在“新建簇大小”后面选择新建簇的大小,再单击“确定”即可。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多