クイックフォーマットと通常のフォーマットの違い

クイックフォーマットとは何か

クイックフォーマット

Windowsを含め、各種フォーマットツールには、「クイックフォーマット」という機能があります。
クイックフォーマットと通常のフォーマットの違いは、不良セクタをチェックするかどうかです。
クイックフォーマットがファイルシステムの管理情報を書き込むだけなのに対し、
通常のフォーマットは、対象領域の不良セクタをチェックした後、ファイルシステムを適用します。

Windowsは、初期設定でクイックフォーマットを行うようになりました。
クイックフォーマットのほうが、効率がいいからでしょう。
通常のフォーマットは、必ず実行しなければならないものではありませんので。

通常のフォーマットでは何をやっているのか

ここでは便宜上、クイックフォーマットではないフォーマットを、
「通常のフォーマット」と呼ぶことにします。
昔のWindowsでは、「通常のフォーマット」と表示されていたので。

通常のフォーマットでは、ファイルシステムの管理情報を書き込むだけではなく、追加の作業があります。
このため、通常のフォーマットには、非常に長い時間を要します。
通常のフォーマットの作業内容は、Windowsのバージョンによって異なります

「Windows XP」以前の通常のフォーマット

「Windows XP」以前の通常のフォーマットでは、
記憶装置の対象領域の読み出しチェックを行います。
いわゆる、ベリファイです。

この過程で読み出しエラーが発生したセクタ、つまり不良セクタは、
記憶装置のファームウェア、及びフォーマット時に指定したファイルシステムに登録されます。
このことで、以後不良セクタを回避して記憶装置を使うことができます。

通常のフォーマットは時間がかかりますが、
そのほとんどは、不良セクタを検出するために領域の読み出しチェックを行っている時間であり、
何か別のデータで大々的に上書きしているわけではありません
元に戻そうと思えば、ファイルは復元できます

「Windows Vista」以降の通常のフォーマット

これは私も気がつかなかったんですが、
Windowsは、「Windows Vista」で通常のフォーマットの仕様を変更しました
※参考: Change in the behavior of the format command in Windows Vista and later versions - Microsoft Support(英語)

具体的には、記憶装置の対象領域にゼロを書き込みます
いわゆる、ゼロフィルです。

従って、「Windows Vista」以降の通常のフォーマットでは、データは完全に消去されます
おそらく、従来からデータの消去目的で通常のフォーマットを選択する人が一定数いたからだと思います。

また、不良セクタに対処する意味でも、ゼロフィルは効果があります。
ペンディングセクタに対して書き込みを要求すると、セクタ代替処理が行われます。
つまり、通常のフォーマットを行うことで、対象領域のペンディングセクタは一旦ゼロになります。

他のフォーマットツールでも、通常のフォーマットは上記2つのいずれかです。
つまり、ベリファイか、ゼロフィルのどちらかです。

古くは、ベリファイが一般的でした。
でも、現在はゼロフィルが一般的になってきているかもしれません。
ベリファイのほうが時間はかからないのですが、
どちらにしても、クイックフォーマットよりは圧倒的に時間がかかるので、
どうせならゼロフィル、みたいな。

「クイックフォーマット」じゃダメなのか?

石橋を叩いて渡るように、何がなんでもクイックフォーマットは嫌だという人もいるかもしれませんが、
そこまでする必要はないと思います。
不良セクタがあるとデータを読めないので、不良セクタは避けなければなりません。
でも、フォーマットの時点でそこまでする必要があるのかどうか。

ハードディスク等の記憶装置は、製造過程で物理フォーマットや動作テストを経て出荷されるので、
新品の記憶装置を再度スキャンする必要はありません。
また、使用中の記憶装置に不良セクタが発生すれば、
随時、記憶装置のファームウェアや、ファイルシステムによって適切な処置がなされます。
普通に使っていても、不良セクタが発生する時は発生するので、
あまり神経質になってもしょうがないと思います。

クイックフォーマットのほうが、はるかに効率がいいのは事実です。
フォーマットの目的を果たすことを考えると、クイックフォーマットで十分です。
個人的には、ほとんどクイックフォーマットしか使いません。

例外は、不良セクタがあるハードディスクに対するフォーマットです。
不良セクタがあるとわかっているハードディスクをフォーマットする場合は、
通常のフォーマットをしたほうがいい
と思います。
通常のフォーマットを行うことで、
不良セクタを論理的にリセットした状態で、ハードディスクを使うことができます。

それでも、クイックフォーマットがダメなわけではありません。
ハードディスクに不良セクタがあったとしても、
普通に使っている限り、書き込む前に読み出すことはないはずだからです。
従って、必ずしもクイックフォーマットだと不具合が発生するわけではありません。