応用情報 午前ラボ

学習の画面へ

ファーストフィットでのモジュール読込み

出典: 平成27年度 春期 応用情報技術者試験 午前 問18 (IPA)

500 k バイトの連続した空き領域に,複数のプログラムモジュールをオーバレイ方式で読み込んで実行する。読込み順序 A と読込み順序 B において,最後の 120 k バイトのモジュールを読み込む際,読込み可否の組合せとして適切なものはどれか。ここで,数値は各モジュールの大きさを k バイトで表したものであり,モジュールを読み込む領域は,ファーストフィット方式で求めることとする。

〔読込み順序 A〕

100 → 200 → 200 解放 → 150 → 100 解放 → 80 → 100 → 120

〔読込み順序 B〕

200 → 100 → 150 → 100 解放 → 80 → 200 解放 → 100 → 120

  1. ア A: 読込み可能, B: 読込み可能
  2. イ A: 読込み可能, B: 読込み不可能
  3. ウ A: 読込み不可能, B: 読込み可能
  4. エ A: 読込み不可能, B: 読込み不可能
正解と解説を見る

正解: イ

ポイント

ファーストフィットは、先頭から見て 最初に入る空き領域 に読み込みます。(数値は k バイト、[ ] は使用中の位置)

順序 A: 100 [0-100] → 200 [100-300] → 200 解放 → 150 [100-250] → 100 解放 → 80 [0-80] → 100 [250-350] → 空きは 80-100 (20)、350-500 (150) なので 120 は読込み可能

順序 B: 200 [0-200] → 100 [200-300] → 150 [300-450] → 100 解放 → 80 [200-280] → 200 解放 → 100 [0-100] → 空きは 100-200 (100)、280-300 (20)、450-500 (50) で、合計 170 あっても 連続した 120 がないので読込み不可能

「ソフトウェア」をこのサイトで解く (記録・間違えた問題の解き直し・AI教師への質問)