基本情報技術者試験「仮想記憶」の問題
ページング方式の仮想記憶において、プログラムが用いる仮想アドレスを実際の主記憶上の物理アドレスへ変換する仕組みとして最も適切なものはどれか。
ア仮想アドレスをそのまま物理アドレスとして主記憶へ送り変換は行わない
イ連続した可変長の領域単位で割り当て外部断片化を前提に管理する
ウページ番号をページテーブルで参照しフレーム番号に変換しページ内変位を連結する
エ補助記憶の全内容を主記憶へ常時複製しアドレスを一致させる
正解
ウ.ページ番号をページテーブルで参照しフレーム番号に変換しページ内変位を連結する
仮想アドレスは上位のページ番号と下位のページ内変位に分割される。ページ番号をページテーブルで物理フレーム番号に変換し、変位はそのまま連結する。固定長ページ単位で対応づけるため設問に一致し正しい。
?選択肢ごとの解説
ア ×変換を行わず仮想アドレスをそのまま使うのは仮想記憶のないモデルであり、ページングのアドレス変換の説明にならない。
イ ×連続可変長領域で管理し外部断片化を前提とするのはセグメント方式の特徴であり、固定長ページのページング方式とは異なる。
ウ ○仮想アドレスは上位のページ番号と下位のページ内変位に分割される。ページ番号をページテーブルで物理フレーム番号に変換し、変位はそのまま連結する。固定長ページ単位で対応づけるため設問に一致し正しい。
エ ×補助記憶の全内容を常時主記憶へ複製するのは現実的でなく、必要なページだけを読み込むデマンドページングの考え方に反する。
✎くわしく
ページングは仮想空間と物理空間を固定長ページ/フレームに区切り、ページテーブルで対応づける。変位は変換せず連結するだけなのでページ境界がそろう。可変長で論理的まとまりごとに分けるセグメント方式と対比すると、断片化の性質(内部/外部)の違いが理解できる。
✓本番での押さえどころ
試験のコツ
『固定長ページ+ページテーブル+変位は連結』をページングの定石として覚える。可変長・論理単位ならセグメントと判断する。
覚え方
ページ番号は『棚の番号を引き換える』、変位は『棚の中の位置はそのまま』。番号だけ変換し位置は据え置き、と覚える。
よくある誤り
ページング(固定長・内部断片化)とセグメント(可変長・外部断片化)を混同する、変位まで変換すると誤解する間違いが多い。
コンピュータ構成要素の他の問題
この問題を、AIの8-ways解説つきで。
無料ではじめる →基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。
ukamiru 過去問 · 基本情報技術者試験 · fe-a3-0163