平成27年度 春期 応用情報技術者試験 午前 問18
テクノロジ/ソフトウェア500kバイトの連続した空き領域に,複数のプログラムモジュールをオーバレイ方式で読み込んで実行する。読込み順序Aと読込み順序Bにおいて,最後の120kバイトのモジュールを読み込む際,読込み可否の組合せとして適切なものはどれか。ここで,数値は各モジュールの大きさをkバイトで表したものであり,モジュールを読み込む領域は,ファーストフィット方式で求めることとする。 〔読込み順序A〕 100 → 200 → 200解放 → 150 → 100解放 → 80 → 100 → 120 〔読込み順序B〕 200 → 100 → 150 → 100解放 → 80 → 200解放 → 100 → 120
出典:平成27年度 春期 応用情報技術者試験 午前 問18
- ア読込み順序A:読込み可能,読込み順序B:読込み可能
- イ読込み順序A:読込み可能,読込み順序B:読込み不可能
- ウ読込み順序A:読込み不可能,読込み順序B:読込み可能
- エ読込み順序A:読込み不可能,読込み順序B:読込み不可能
正解:イ
解説
ファーストフィット方式では,空き領域を先頭から探索し,最初に見つかった十分な大きさの領域に読み込みます。読込み順序Aでは,モジュールの確保・解放を追跡すると120kバイトを収められる空き領域が残りますが,読込み順序Bでは,最後に120kバイトを読み込もうとする時点で十分な大きさの連続した空き領域が残っておらず,読み込めません。
選択肢ごとの解説
- ア誤り。順序Aは読込み可能ですが,順序Bは最後の120kバイトを読み込める十分な空き領域が残っておらず,読込み不可能になります。
- イ正しい。順序Aは途中の解放によって120kバイトを収められる空き領域が確保できますが,順序Bは最後の時点で120kバイト未満の空き領域しか残らず読み込めません。
- ウ誤り。順序Aは実際には空き領域を確保でき読込み可能です。
- エ誤り。順序Aは読込み可能であり,両方とも不可能というのは誤りです。