エンベデッドシステムスペシャリスト 2024年 午前2 問07
問題文
可変区画方式を用いた主記憶管理において、最適適合アルゴリズムによって割り当てられる未使用領域はどれか。
選択肢
ア:最小の未使用領域
イ:最初に見つかった十分な大きさをもつ未使用領域
ウ:最大の未使用領域
エ:十分な大きさをもつ最小の未使用領域(正解)
🔒 解説は解答すると表示されます
最適適合方式【午前2解説】
正解の理由
最適適合アルゴリズム(ベストフィット)は、要求された大きさ以上の未使用領域の中から、最も小さい領域を選ぶ方式です。
例えば、10 KBの領域が必要で、未使用領域が8 KB、12 KB、20 KBある場合、8 KBは要求を満たさないため候補外です。候補の12 KBと20 KBのうち、より小さい12 KBを割り当てます。
したがって、該当するのは「十分な大きさをもつ最小の未使用領域」を選ぶエです。
解法ステップ
- 「最適適合」は、要求を満たす領域を探す方式だと確認します。
- 要求サイズ未満の領域は割り当てられないため、候補から除外します。
- 残った領域のうち、最も小さいものを選びます。
選択肢別の誤答解説
-
ア:最小の未使用領域
要求サイズを満たすかどうかが考慮されていません。最小でも必要な大きさに足りなければ割り当てられません。 -
イ:最初に見つかった十分な大きさをもつ未使用領域
領域を先頭から探し、最初に条件を満たしたものを選ぶ方式です。これは**初回適合(ファーストフィット)**です。 -
ウ:最大の未使用領域
最も大きな領域を選ぶ方式です。これは**最悪適合(ワーストフィット)**です。 -
エ:十分な大きさをもつ最小の未使用領域
要求サイズを満たす領域だけを候補にし、その中で最小のものを選ぶため、最適適合の説明として正しいです。
よくある誤解
- 「最適」という言葉から、常に最も大きな領域を選ぶと思いがちです。最適適合では、必要な大きさを満たす領域の中で最小のものを選びます。
- 「最小の領域」とだけ覚えると、要求サイズ未満の領域まで選ぶように誤解しやすいです。まず要求サイズを満たすかを確認します。
- 初回適合と最適適合を混同しがちです。初回適合は「最初に見つかった領域」、最適適合は「条件を満たす中で最小の領域」です。
補足コラム
可変区画方式では、プロセスの大きさに応じて主記憶を区画に分けます。割り当て後に領域の一部が余ることがあり、未使用領域が細かく分散していくと、合計では十分な空き容量があっても、連続した領域を確保できないことがあります。こうした現象を外部断片化といいます。
FAQ
Q. 最適適合なら、必ず空き領域を効率よく使えますか?
A. 要求を満たす領域の中から小さいものを選びますが、常に記憶領域全体の効率が最良になるとは限りません。小さな未使用領域が増え、外部断片化が発生することもあります。
A. 要求を満たす領域の中から小さいものを選びますが、常に記憶領域全体の効率が最良になるとは限りません。小さな未使用領域が増え、外部断片化が発生することもあります。
Q. 初回適合との違いを簡単に覚える方法はありますか?
A. 初回適合は「最初に見つかったもの」、最適適合は「条件を満たすものの中で最小」と覚えると区別しやすいです。
A. 初回適合は「最初に見つかったもの」、最適適合は「条件を満たすものの中で最小」と覚えると区別しやすいです。
関連キーワード: 可変区画方式、最適適合、初回適合、最悪適合、外部断片化

\ せっかくなら /
エンベデッドシステムスペシャリストを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

