auの日記

プログラミング初心者の日記。(auはハンドルネームです)

フラグメンテーションとは

auです。

フラグメンテーションの意味について調べました。

フラグメンテーションとは

フラグメンテーションという用語は、ハードディスクやメモリで使われます。

フラグメンテーション(Fragmentation)は「断片」という意味をもつ英単語です。まとまっているファイルやデータを小さく分割することや、小さく断片になってしまうことを言います。

プログラムを実行すると、メモリが割り振られます。このメモリをmallocで取得し、freeで解放すると、その部分が虫食いのように空いてしまい、飛び飛びにメモリが割り振られ、使っているメモリと使っていないメモリに隙間ができてしまい、フラグメンテーションが起きてしまいます。

また、この虫食いになってしまったデータを戻すことを「デフラグメンテーション(デフラグ)」と呼びます。