戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

エンベデッドシステムスペシャリスト 2025年 午前2 問07


問題文

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

選択肢

ア:
イ:
ウ:(正解)
エ:

🔒 解説は解答すると表示されます

ページテーブルの必要領域【午前2解説】

正解の理由

仮想アドレス空間の大きさは バイト、ページサイズは バイトです。したがって、仮想アドレス空間に含まれるページ数は次のとおりです。
ページテーブルには、ページごとに1個のエントリが必要です。各エントリの大きさが バイトなので、ページテーブル全体の大きさは次のようになります。
よって、 となる ウ が正解です。

解法ステップ

  1. 仮想アドレス空間の大きさをページサイズで割り、ページ数を求めます。
    ページです。
  2. ページ数と、1エントリの大きさを掛けます。
    バイトです。
  3. 指数法則 を使います。
    必要な領域は バイトなので、指数は です。

選択肢別の誤答解説

  • ア:
    ページ数を求めるときに、ページサイズの指数 を引かずに足しています。ページ数は「仮想アドレス空間の大きさ ÷ ページサイズ」なので、指数は です。
  • イ:
    ページ数の計算で を足しているうえ、エントリの大きさ を掛ける際にも を引いています。掛け算では指数を足します。
  • ウ:
    ページ数 に、各エントリの大きさ を掛けた結果と一致します。
  • エ:
    ページ数の指数 は正しく求めていますが、エントリの大きさを掛ける際に を引いています。 を掛けるため、指数には を足します。

よくある誤解

  • ページ数を求めるときに、ページサイズを掛けてしまうことがあります。ページ数は「全体の大きさを1ページの大きさで割る」ため、指数は です。
  • ページテーブル全体の大きさを求めるとき、エントリ数だけで計算してしまうことがあります。各エントリのバイト数も掛ける必要があります。
  • を掛けるときに指数を引くと思い込むことがあります。同じ底の累乗の掛け算では、指数を足します。

補足コラム

この計算では、仮想アドレス空間の全ページに対応するエントリをページテーブルに用意すると仮定しています。実際のシステムでは、階層型ページテーブルなどを用いて、使用していない領域に対応するページテーブルを作らず、必要な領域を抑える方式もあります。

FAQ

Q. ページ数が になるのはなぜですか?
A. 仮想アドレス空間の大きさ バイトを、1ページの大きさ バイトで割るためです。累乗の割り算では指数を引くので、 になります。
Q. ページテーブルのエントリ数はページ数と同じですか?
A. この問題の前提では同じです。仮想ページごとに1個のエントリが必要です。

関連キーワード: 仮想記憶、ページング、ページテーブル、ページサイズ、累乗の指数法則
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

エンベデッドシステムスペシャリストを
クイズ形式で学習しませんか?

クイズ画面へ遷移する→

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について