過去問解きまくり研究所 ホーム

令和2年度 10月 午前 問16

ソフトウェア

記憶領域を再び利用可能にする機能

記憶領域の動的な割当て及び解放を繰り返すことによって,どこからも利用できない記憶領域が発生することがある。このような記憶領域を再び利用可能にする機能はどれか。

答えと解説を見る

✓ これが正解アガーベジコレクション

解説

参照されなくなった領域を回収して再利用可能に戻す仕組みです。

動的にメモリを割り当てたり解放したりを繰り返すと、どこからも参照されなくなったのに使用済みのまま残ってしまう領域がしだいに増えていきます。設問はこうした領域を再び使える状態に戻す働きを問うており、ですから、参照が絶えたかどうかを検出して回収する動きを持つ仕組みかどうかで見分けます。ガーベジコレクションは、その名の通り不要になった記憶をゴミとして扱い、いまも生きている参照から辿れなくなった領域を見つけて自動で回収し、次の割り当てに使えるように戻す働きを持ちます。Java や Python、C# などのランタイムに標準で組み込まれています。主な方式には参照数を数える方式、生きている参照をマークして残りを掃く方式、生存領域を別空間へ写す方式などがあり、どれも回収の判断と実行を担います。

ほかの選択肢はなぜ違うのか

出典:令和2年度 10月 応用情報技術者試験 午前 問16

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)