ファイルの断片化とは何か、そしてWindowsでそれはどのように発生するか?

Windowsには独自のデフラグツールがあり、すでに使用しているかもしれません。Windowsのファイル格納アルゴリズムに関しては、オペレーティングシステムは一時ファイルを通じて過剰な断片化のケースを作ります。そしておそらくそれが、この記事でWindowsディスクデフラグツールと呼ぶこととなるデフラグツールを提供する理由です。

Windowsのファイル断片化とは?

Windowsはハードディスクにファイルをどのように格納しますか? おそらくあなたは答えを知っているでしょう。ハードディスク上でファイルサイズに相当する最初の空きセクターを見つけようとします。そしてそこにファイルと、パディングと呼ぶ追加のスペースを格納します。このパディングは後でファイルが拡張できるようにするためのものです。しかし、パディングの計算は正確ではありません。ファイルが後でどれほど大きくなるかはユーザーが決めることだからです。

ファイルは複数の理由で断片化されることがあります。一般的な原因の1つは、ファイルシステムがファイルの作成時に過剰なスペースを確保し、その結果ファイルの周りに隙間が生じることです。さらに、完全に消去されていない削除されたファイルも、新しいファイルが書き込まれるときにデータの断片化の一因となる可能性があります。

Word文書を作成して、保存ボタンを押す前に2つの単語を入力したとします。Windowsはそれらの2つの単語 (パディング付き) にちょうど十分なスペースを見つけ、保存します。その後、あなたは文書にさらに多くの単語を追加し続けます。Windowsは、保存された文書に最初に追加したスペースにそれらの追加の単語を収めようとします。

しかし、Windowsはあなたが文書にさらにどのくらいの単語を追加するかを知りません。そのため、ファイルの末尾にある追加のスペースがカバーされると、Windowsはパディングを越えて空きスペースを探し、追加のファイルをハードディスク上の別のセクター (おそらく別のトラックまたはプレート) に追加する時が来ます。

さらに、ファイル (主に何かをインストールしたり、オフィスファイルを開いたりするとき) を扱っているときに、Windowsは通常のファイルと同じようにハードディスクに書き込まれる一時ファイルを作成することに気付いたかもしれません。これは、ファイルで作業している間、ハードディスク上の連続した空きスペースが一時ファイルによって占有されることを意味します。これは、保存ボタンを押すたびにWindowsが断片化されたファイルを作成することを意味します。インストールが完了し、一時ファイルが削除されると、ファイルがハードディスク全体に分散され、その一部が異なるセクターやプレートに格納されていることがわかります。

つまり、ファイルを保存、変更、削除するたびに、断片化が発生します。ファイルに加える変更は、多くの場合別の場所に保存されます。追加の変更はさらに多くの場所に保存されます。時間の経過とともに、ファイルとハードディスク自体が断片化され、1つのファイルを開くために多くの異なる場所を調べなければならないため、コンピューターの速度が少し遅くなる可能性があります。

これを理解した上で、Microsoftがこの問題に対処し、より良く、簡単なディスクデフラグのエクスペリエンスを提供するためにディスクデフラグツールをどのように改善したかを見ていきましょう。

Windowsディスクデフラグツールの改善点

ファイルのデフラグとは、ハードディスクドライブなどの記憶媒体上のデータを再編成して、記憶と検索を最適化するプロセスです。ファイルの断片化を軽減することで、コンピューターのパフォーマンスを向上させるのに役立ちます。デフラグは断片化されたファイルを統合し、より高速なアクセスと全体的なシステム効率を実現します。

Windowsディスクデフラグツールは、Windows Vista以前まではメモリとCPUリソースを大量に使用していました。Windows XPまたはそれ以前のバージョンでWindowsディスクデフラグツールを実行している場合は、コンピューターで他の操作を行う前にデフラグが完了するのを待たなければならないことはよく知られていました。システムソフトウェアであるにもかかわらず、ネイティブのディスクデフラグツールはメモリとCPUを大量に使用しており、これは決して望ましくないリソースオーバーヘッドです。

ハードディスクのサイズが大きくなり、大多数の人がサードパーティのディスクデフラグツールを使用するようになったため、MicrosoftはWindows Vistaでより良いWindowsデフラグツールを考案し、Windows 11/10/8/7でさらに改善しました。新しいディスクデフラグツールは完全に刷新され、思いがけないほど高速であることがわかります。また、コンピューターがアイドル状態のときは常にバックグラウンドで動作し、コンピューターのリソースを詰まらせることはありません。

もう1つの改善点は、オペレーティングシステムが作業中のファイルを格納する前に、最も大きな連続した空きスペースを探すことです。つまり、2つの方法で断片化を回避しようとしています。

  1. 比較的大きな空きスペースを見つける
  2. ファイルの末尾にパディングを追加する

デフラグツールには現在2つの重要なフェーズが含まれています。

  1. 空きスペースを見つけて、断片化されたファイル全体を移動し、すべての部分を隣接するトラックとセクターに格納する。
  2. 空きスペースを集めて、Windowsが将来断片化されていないファイルを格納しやすくする。

つまり、Windowsデフラグツールを実行すると、ファイルの断片化を解除するだけでなく、ある程度将来の断片化を回避するためにハードディスクのスペースを最適化することになります。

これにより、Windowsで断片化が発生する理由と、Windowsのデフラグツールを使用して断片化を回避する方法を理解するのに役立つことを願っています。

このトピックに関する追加の読み物:

  1. Windowsディスクデフラグツールユーティリティのトラブルシューティング
  2. WindowsでMFT、ページファイル、レジストリ、システムファイルをデフラグする方法。