碎片整理程序如何工作?


13

a)典型的碎片整理程序将使用哪种算法来消除碎片?

b)在Defraggler中,我有一个快速的碎片整理选项和一个碎片整理选项。假设进行碎片整理可以正常进行碎片整理,那么快速的碎片整理又能做什么呢?

Answers:


13

我对碎片整理并不了解,但是我想分享一些有关您的问题的信息。对于您的问题的第一部分,MSDN在其博客中提到了有关碎片整理的算法:

在Windows XP中,任何拆分成多个文件的文件都被视为碎片。如果碎片足够大,则在Windows Vista中不是这样-碎片整理算法已更改(从Windows XP开始),以忽略大于64MB的文件片段。因此,XP中的碎片整理和Vista中的碎片整理将报告卷上不同数量的碎片。那么,哪个是正确的?好了,在可以回答问题之前,我们必须了解为什么Vista中的碎片整理已更改。在Vista中,我们分析了碎片整理的影响,并确定碎片整理对性能的最显着影响是将文件片段组合成足够大的块时,磁盘搜索延迟的影响相对于顺序读取相关的延迟而言并不重要文件。有一点之后,合并零散的文件片段没有明显的好处

您可以从此处阅读全文:Engineering Windows 7-磁盘碎片整理。

对于问题的第二部分,Piriform Docs有一个答案:

碎片整理程序有两种不同的碎片整理模式:常规碎片整理和快速碎片整理。快速碎片整理速度更快,但结果却不如常规碎片整理那样理想。

快速碎片整理通过跳过具有某些属性的文件来更快地工作。这些在“选项”对话框的“快速碎片整理”选项卡中指定。

快速碎片整理的默认规则是跳过片段大于50MB的文件。

为了更好地理解碎片整理,维基百科提供了一个不错的页面


+1这几乎与我们可以说的有关碎片整理的一切有关!
r0ca 2010年

2

需要注意的重要一件事:Microsoft提供了一种API,程序可以使用该API对文件进行安全的碎片整理。(请参阅MSDN上的对文件进行碎片整理)任何碎片整理都应使用这些API,大多数都可以使用。

进行碎片整理的所有“魔术”都在于确定如何布置文件,而这就是各种程序用来区分彼此的方法。如果您认为自己很聪明,可以使用MyDefrag编写自己的布局脚本。


0

绝对没有1个答案。没有“典型”算法。因为每个碎片整理应用程序都使用自己的算法。当然,在某些较知名的算法中可能会出现一种“趋势”,但总的来说,没有典型或通用的算法。

使用MyDefrag这个很棒的应用程序吧,您可以在某种程度上编写自己的碎片整理算法。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.