正答1
解説
正解は1です。
メモリリークとは、プログラムが動作中に確保した主記憶の領域を、使い終わっても解放しないまま残してしまう現象です。
長時間動かすと利用可能な主記憶がしだいに減り、動作が遅くなったり停止したりします。
【選択肢別解説】
1:○ バグなどで確保した主記憶が解放されず、利用可能な領域が減っていく現象がメモリリークです。
OSやアプリケーションの再起動で解消されることが多いのも特徴です。
2:× 主記憶が不足してページングが頻発し、スループットが極端に下がる現象はスラッシングです。
3:× プログラム領域の大きさに制限があるとき、必要なモジュールだけを主記憶に取り込む手法はオーバレイです。
4:× 空き領域の総量は足りているのに、細切れに散らばって大きな連続領域が確保できない状態は、フラグメンテーション(断片化)です。
【ポイント】
メモリリークは「解放忘れによる減少」、フラグメンテーションは「空きの細切れ化」、スラッシングは「ページングの多発」と区別します。
フラグメンテーションの対策にはガーベジコレクションやコンパクションがあります。