PC のハードディスクにデータの追加や削除を繰り返していると, データが連続した領域に保存されなくなることがある。改善策を講じない場合, どのような現象が起こり得るか。
平成23年度 特別試験 ITパスポート試験 問80
この問題の解説と、これまでの解答の記録です。
問 80
不正解ア
ウイルスの検出は、ウイルス対策ソフトがファイルの内容を読み取り、ウイルス定義ファイル (パターンファイル) のパターンと照合したり、ふるまいを監視したりして行う。ファイルがディスク上で連続領域に置かれているか飛び飛びに置かれているかは、OS がファイルシステムを介して内容を読み出す際に吸収されるため、対策ソフトから見える中身は同じであり、検出可否には一切影響しない。検出できなくなる原因は、定義ファイルが古い、リアルタイムスキャンが無効になっている、未知のウイルスであるといった別の要因であって、断片化とは無関係である。
不正解イ
断片化が進んでも、空き領域が残っている限り OS はそれらを組み合わせてデータを書き込むことができ、書込みが正しく行えなくなるわけではない。連続した大きな空き領域が減るぶん書込み時にも位置決めが増えて速度は落ちうるが、それは速度の問題であって正誤の問題ではない。データが正しく書き込めなくなるのは、ディスクの空き容量が尽きた、記録面に不良セクタが生じた、書込み中に電源が落ちたといった別の障害による現象である。
不正解ウ
紛らわしい選択肢だが、断片化してもデータが読めなくなることはない。ファイルの断片がディスク上のどこに何番目として置かれているかは、ファイルシステムの管理情報に正確に記録されており、OS はそれをたどって断片を正しい順序につなぎ合わせて 1 つのファイルとして復元する。したがって読み出される内容は断片化前と同一である。正しく読み取れなくなるのは、不良セクタや媒体の劣化、管理情報の破損など、データの完全性が失われる障害が起きた場合であり、断片化の帰結ではない。断片化が招くのは、正誤ではなく速度の低下である点を区別したい。
- エ
正解 正解はエ。設問が述べている「データの追加や削除を繰り返すうちに、データが連続した領域に保存されなくなる」状態を、フラグメンテーション (断片化) という。ファイルを削除すると、その分だけ小さな空き領域があちこちに散らばって残る。そこへ新しいファイルを書き込むと、1 つの空き領域には収まりきらないため、OS はファイルを複数の断片に分けて離れた空き領域へ次々に格納する。こうして 1 つのファイルの中身がディスク上に飛び飛びに配置されていく。ここで重要なのは、どの断片がどこにあるかという情報はファイルシステムの管理領域 (FAT やインデックス) に正しく記録されている、という点である。つまり断片化してもデータそのものが壊れるわけではなく、内容は完全な形で復元でき、読み書きが失敗するようになるわけでもない。悪化するのは速度だけである。ハードディスクは磁気ヘッドを目的の位置へ移動させ (シーク)、ディスクが回転してくるのを待ってから読み書きする装置なので、連続領域にあるファイルなら 1 回の位置決めで一気に読めるのに対し、断片化したファイルでは断片の数だけシークと回転待ちが繰り返し発生する。この機械的な待ち時間の積み重ねが、体感できるアクセス性能の低下として現れる。よって改善策を講じないまま放置したときに起こり得る現象は、保存したデータの読取りが遅くなることであり、エが正しい。なお、この改善策が、断片を並べ替えてファイルを連続領域に配置し直すデフラグメンテーション (デフラグ、最適化) である。
- フラグメンテーション (断片化) — ファイルの追加と削除を繰り返すうちに空き領域が細切れになり、1 つのファイルが連続しない複数の領域に分割して記録される状態。ハードディスクではシークと回転待ちの回数が増えるため、データが壊れることはなく、アクセス速度だけが低下する。
- デフラグメンテーション (デフラグ、最適化) — 断片化したファイルを並べ替えて連続領域に配置し直し、アクセス性能を回復させる保守作業。断片化の影響は性能面に限られ、読み書きの正誤やウイルス検出には及ばないという切り分けが、この種の問題を解く鍵になる。