SkillStack
テクノロジ系7 / 25問

エンベデッドシステムスペシャリスト試験 令和7年度 秋期 午前II 問7

ページング方式の仮想記憶において、あるプロセスが仮想アドレス空間全体に対応したページテーブルをもつ場合、ページテーブルに必要な領域の大きさを 2ˣ バイトで表すとすると、x を表す式はどれか。ここで、仮想アドレス空間の大きさは 2ᴸ バイト、ページサイズは 2ᴺ バイト、ページテーブルの各エントリの大きさは 2ᴱ バイトとし、その他の情報については考慮しないものとする。

選択肢を押すと答え合わせができます。

正解と解説を見る

【正解】ウ

ページテーブルには、仮想アドレス空間に含まれる各仮想ページに対して一つのエントリが必要です。まず、仮想ページ数は、仮想アドレス空間の大きさをページサイズで割って求めます。

2ᴸ÷2ᴺ=2ᴸ⁻ᴺ

したがって、エントリ数は2ᴸ⁻ᴺ個です。各エントリの大きさが2ᴱバイトなので、ページテーブル全体の大きさは次のとおりです。

2ᴸ⁻ᴺ×2ᴱ=2ᴸ⁻ᴺ⁺ᴱバイト

よって、2ˣバイトの指数xはL-N+Eとなり、ウが正解です。

アのL+N+Eは誤りです。ページ数を求めるとき、空間の大きさをページサイズで割るので、指数Nは加算ではなく減算します。 イのL+N-Eも誤りです。ページ数の計算でNを加算しているだけでなく、エントリの大きさを掛けるべきところでEを減算しています。 エのL-N-Eは誤りです。L-Nまではページ数を表しますが、各エントリの大きさ2ᴱを掛けるので、Eは減算ではなく加算します。

【ポイント】 ページテーブル容量は、「仮想ページ数×1エントリのバイト数」で求めます。ページ数と各エントリの容量を分けて考えることが重要です。2のべき乗同士の除算では指数を引き、乗算では指数を足すことを押さえてください。

出典:令和7年度 秋期 エンベデッドシステムスペシャリスト試験 午前II 問7
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。

この回の25問を、アプリで通しで解く

  • 本番と同じ問題数・制限時間で通し演習(模試モード)
  • 間違えた問題は自動で「復習すべき問題」に回る
  • 解説で分からない点はAIに質問できる
SkillStackで無料で始める