エンベデッドシステムスペシャリスト試験 令和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に質問できる