导读:微软不仅在Windows Vista中增加了新的性能增强工具,比如ReadyBoost、ReadyDrive、SuperFetch,而且还致力于改进 最古老的性能增强工具——磁盘碎片清理工具。 作为一位资深的IT专业人士,一定了解,使用硬盘过程中会导致碎片的产生 。同样,肯定也知道如果对此置之不理,那么磁盘碎片将是导致系统性能下降巨大的罪魁祸首。
在硬盘上,一个簇是磁盘空间最小的划分单位,也是操作系统能寻址访问的最小单位,同时还是一个文件最小的占用空间。 在windows xp下以NTFS文件系统格式化好的标准硬盘来说,簇的最大默认值是4KB(也就是4096字节)。现在,每拷贝新文件 到硬盘上一次,或从硬盘上每删除旧文件一次,以及每添加内容到已有文件中一次,都会因自己的每一次操作而不断制造出 更多的磁盘碎片。举个例子,当拷贝一个文件到硬盘上时,操作系统会把文件存放在硬盘上的第一个空闲簇中。 如果第一个 簇无法完全存放该文件的全部内容,操作系统会把文件分割成几个部分,在填满了第一个簇后,剩余的部分开始放进下一个 空闲簇里。 如果这第二个空闲簇不是恰好位于第一个之后,那么这个文件就被人为的分割成了几个碎片。
在文件中添加信息时,碎片也往往一起产生。如果原文件因为添加内容而超过了原始簇的大小,操作系统将不得不把超出的 部分填入下一个空闲簇。 如果这个空闲簇凑巧又没有位于原始簇之后,那么文件就又一次被分割为碎片了。此外,每一次从 硬盘中删掉文件都会造成大量的簇重新可用,而这些原本就不连续的簇又大大的增加了新文件被碎片化的可能——除非被删 除的文件事先已经被清理过文件碎片。时间愈久,忽视文件碎片带来的问题就愈大。文件碎片的四处扩散,迫使硬盘的读写 更加频繁。定位和读取数据,读写移动的次数越多,读取文件所花费的时间越久,硬盘性能因此受损愈大。有时情况会变得 更糟,文件碎片会导致整体性能的大幅滑坡,延长启动时间,随机产生的系统崩溃,以及不明原因的系统死机。实际上,碎片问题极端严重的一块硬盘,甚至会出现系统根本无法正常启动的情况。
磁盘碎片整理
目前最常见的磁盘碎片整理程序,是由Execuitive软件公司授权,包含在windows 2000和windows xp系统中,设计用于整理 硬盘,将文件的内容碎片收集到一起,并将他们存放在硬盘起始位置的连续簇中。在这个过程中,磁盘碎片整理将所有的可 用簇朝磁盘尾部迁移。一旦磁盘碎片清理结束,所有的文件内容都将被存放在连续的簇里,存取文件时,读写移动的距离大 大减少,磁盘性能也就因此得到了提升。
尽管磁盘碎片整理的确可以提升性能,但是不得不手动的去执行它——必须每过一段时间就要想起来去运行一下才行。当然 ,很明显的一个解决办法就是使用日程计划程序,安排磁盘清理程序自动运行。但是,磁盘碎片整理程序并非是被设计成自 动执行的。实际上,这个磁盘碎片整理程序是一个性能缩水的Diskeeper软件,根据日程计划自动执行的功能并未包含在该版 本里;如果想使用该功能,只能购买完全版的Diskeeper软件,里面提供有智能日程安排技术,可以根据使用硬盘的习惯来制 定完全自动的磁盘整理计划。
解决方案
在Windows Vista里,微软公司最终添加了自动磁盘整理的功能。实际上,磁盘碎片整理程序可以被设置为每天清理硬盘一次 。当第一次安装了5308版的Windows Vista,并不知道这个功能,听到来自硬盘的噪音,就像以前习惯在Windows 3.X的时代 听到的那种操作系统试图努力将SWAP文件排成直线时、以及最初在Beta软件中注销时所发出的一样。 当注意到他以规则的时 段持续产生后,打开任务管理器,发现磁盘碎片清理程序在后台运行。没有任何图标或者接口指示告诉你这个程序正在运行 。但当我在开始菜单找到了它的图标,并运行它之后。透过图形界面,却发现磁盘碎片清理程序的确已经在运行了。日程安 排出现在窗口中,如果点击“调整安排”的按钮,便可以根据自己的喜好来重新编排运行日程。