平成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
| 読込み順序A | 読込み順序B | |
|---|---|---|
| ア | 読込み可能 | 読込み可能 |
| イ | 読込み可能 | 読込み不可能 |
| ウ | 読込み不可能 | 読込み可能 |
| エ | 読込み不可能 | 読込み不可能 |
キーボード:1〜4 で解答 → 次の問題 ← 前の問題
正解と解説を見る
解答する前に解説を開いたので、この問題は「見て解いた」として記録します(正解数には入りません)。
正解:イ
ファーストフィット方式では,先頭から探して最初に見つかった十分な大きさの空き領域に読み込みます。アドレスをkバイト単位で追います。
読込み順序A
- 100 → 0~100
- 200 → 100~300
- 200解放 → 空き:100~500(400)
- 150 → 100~250(空き:250~500)
- 100解放 → 空き:0~100,250~500
- 80 → 0~80(空き:80~100,250~500)
- 100 → 250~350(空き:80~100(20),350~500(150))
- 120 → 350~500 の150kバイトに 読込み可能
読込み順序B
- 200 → 0~200
- 100 → 200~300
- 150 → 300~450(空き:450~500)
- 100解放 → 空き:200~300,450~500
- 80 → 200~280(空き:280~300,450~500)
- 200解放 → 空き:0~200,280~300,450~500
- 100 → 0~100(空き:100~200(100),280~300(20),450~500(50))
- 120 → 最大の空きが100kバイトなので 読込み不可能
-
ア: A:読込み可能,B:読込み可能
誤り。順序Bでは最大の空き領域が100kバイトしかなく,120kバイトは読み込めません。 -
イ: A:読込み可能,B:読込み不可能
正しい。順序Aでは350~500kの150kバイトの空きに読み込めますが,順序Bでは最大の空きが100kバイトで読み込めません。 -
ウ: A:読込み不可能,B:読込み可能
誤り。可否が逆です。 -
エ: A:読込み不可能,B:読込み不可能
誤り。順序Aでは150kバイトの空き領域があり,120kバイトを読み込めます。
答え
イ: A:読込み可能,B:読込み不可能
出典:平成27年度 春期 応用情報技術者試験 午前 問18