基本情報 2022 サンプル問題 問17:テクノロジ系に関する問題
三つの媒体A ~ C に次の条件でファイル領域を割り当てた場合,割り当てた領域 の総量が大きい順に媒体を並べたものはどれか。 〔条件〕 (1) ファイル領域を割り当てる際の媒体選択アルゴリズムとして,空き領域が最大の 媒体を選択する方式を採用する。 (2) 割当て要求されるファイル領域の大きさは,順に90,30,40,40,70,30 (M バイト)であり,割り当てられたファイル領域は,途中で解放されない。 (3) 各媒体は容量が同一であり,割当て要求に対して十分な大きさをもち,初めは全 て空きの状態である。 (4) 空き領域の大きさが等しい場合には,A,B,C の順に選択する。
- aA,B,C
- bA,C,B
- cB,A,C
- dC,B,A正答
AI解説(初心者・標準・上級)
理解度に合わせて3レベルの解説を無料で読めます。
答えは d「C,B,A」 です。
同じ大きさの3つの空き棚 A・B・C があると想像してください。毎回ルールは「一番たくさん空いてる棚に置く」、空きが同じなら A→B→C の順で選びます。
要求は順番に 90, 30, 40, 40, 70, 30。これを順にあてはめていくと…
- 90 → 全部同じ空きなので A に置く(A=90)
- 30 → BとCが同じ空き → B(B=30)
- 40 → 一番空いてるC → C(C=40)
- 40 → 一番空いてるB → B(B=70)
- 70 → 一番空いてるC → C(C=110)
- 30 → 一番空いてるB → B(B=100)
最終:A=90、B=100、C=110。多い順は C, B, A。
👉 覚え方:「空きが最大 = 使用量が最小」に置く、と紙に書いて1ステップずつ計算!
なぜこれが正解か
正解は d。各媒体の容量を十分大きな同一値 L とすると、空き領域 = L − 使用量 なので「使用量が最小の媒体に割り当てる」と同義。同点なら A→B→C 優先。要求 90,30,40,40,70,30 を順に処理:
| 手順 | 要求 | 使用量(A,B,C) | 選択 |
|---|---|---|---|
| 1 | 90 | (0,0,0) | A → A=90 |
| 2 | 30 | (90,0,0) | B → B=30 |
| 3 | 40 | (90,30,0) | C → C=40 |
| 4 | 40 | (90,30,40) | B → B=70 |
| 5 | 70 | (90,70,40) | C → C=110 |
| 6 | 30 | (90,70,110) | B → B=100 |
最終 A=90, B=100, C=110。多い順は C, B, A。
各選択肢の解説
- a/b/c は途中計算ミスを誘う典型ダミー。「空き最大=使用最小」の置き換えと、同点時の A→B→C 規則の両方を守らないと不正解に。
覚え方・ひっかけ注意
表を書いて1ステップずつ更新するのが最短ルート。「最良適合(best-fit)」と混同しないこと(本問は『空き最大』なのでworst-fitに近い)。
理論的背景
本問は記憶管理・ファイル領域割当のアルゴリズム比較に通じる典型問題。動的領域割当の代表方式は次の3つ:
- First-fit:空き領域リストの先頭から探索し最初に収まる場所に割当。高速だが断片化が進みやすい。
- Best-fit:要求サイズに最も近い空きを選択。小さな未使用断片が大量発生(外部断片化)。
- Worst-fit:最大の空きを選択。残りが大きいので再利用しやすいが、大要求が来ると失敗しやすい。
本問の「空き領域が最大の媒体を選択」はWorst-fit に相当する。割当が解放されない前提なので、最終的に使用量が平準化されにくく、特定媒体に偏る挙動が観察できる。
実務での使われ方
ファイルシステム(XFS/ext4/ZFS 等)はブロック割当でこれら戦略の派生を使い分ける。データベースのテーブルスペース管理、メモリプール、JVM ヒープのリージョン割当でも類似アルゴリズムが採用される。クラウドストレージのオブジェクト配置(負荷分散)でも「最も空いているノードに配置」する worst-fit 的方針が一般的。
試験での位置づけ
基本情報・応用情報ともに「メモリ管理」「ファイル管理」分野で出題。外部断片化/内部断片化/コンパクションの用語、断片化対策としてのガベージコレクション・スラブアロケータまで体系で押さえる。本問のような手動シミュレーション問題は計算ミスを防ぐため必ず表を書くこと。
選択肢の発展補足
要求順序を変えると結果も変わるため、割当アルゴリズムの公平性・予測可能性は実システム設計の重要観点。Round-robin 方式、ハッシュベース配置(Consistent Hashing)など、本問の延長で学ぶと分散システム分野(基本情報・PM 試験)でも応用が利く。
出典:IPA(情報処理推進機構)公式 基本情報技術者試験 2022 サンプル問題 問17/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。