フラグメンテーション 【fragmentation】 断片化 / フラグメント化
概要
フラグメンテーション(fragmentation)とは、破片、断片、砕ける、断片化する、などの意味を持つ英単語。ITの分野では、まとまったデータや記憶領域などを小さな単位に分割したり、意図せず小さな断片に分断されてしまうこと(および、そのような状態になったデータや領域自体のこと)などを意味する。ストレージのフラグメンテーション
ハードディスクなどのストレージ(外部記憶装置)にファイルの書き込み・消去を繰り返していくと、連続した大きな空き領域が次第に少なくなり、新たに記録するファイルが小さな断片に分割されて記録されるようになってしまう。
このような状態のことを「ディスクフラグメンテーション」という。これを解消する操作のことを「ディスクデフラグメンテーション」(disk defragment)あるいは短縮して「ディスクデフラグ」「デフラグ」と呼ぶ。
メモリのフラグメンテーション
長時間コンピュータを起動して様々なプログラムを使用していると、メモリ領域についてにも似たような現象が起きることがあり、これを「メモリフラグメンテーション」という。
固定長の領域を割り当てていくシステムで割り当てられた領域内に未使用の断片が生じることを「内部断片化」、可変長の領域を割り当てていくシステムで空き領域が細かく分割されすぎて連続した大きな領域の割り当てができなくなることを「外部断片化」という。
OSなどがメモリの占有領域の再配置などを行ってメモリの断片化を解消することをデフラグメンテーションあるいは「コンパクション」(compaction/メモリコンパクション)という。
通信におけるフラグメンテーション
ネットワーク通信において、送信したいパケットやフレームのサイズが通信回線や転送方式の制限よりも大きい場合に、これを送信可能なサイズの複数の単位に分割して送信する処理のことをフラグメンテーションという。特に、IPデータグラムの場合は「IPフラグメンテーション」という。
受信側では分割されたすべてのデータの到着を待ち、先頭から順番に連結してもとのデータに組み立てる処理が必要となる。
(2019.12.12更新)