OSとハードウェア

仮想アドレスのうち48ビットを使い、ページサイズ4 KB、各段の表が512項目(9ビット)の多段ページテーブルでは、何段の表をたどる必要があるか。

  1. A2段
  2. B3段
  3. C4段
答えと解説を見る

正解:C. 4段

ページサイズ4 KB = 2¹² なので、下位12ビットがページ内のオフセットです。残りの 48 − 12 = 36ビットがページ番号で、各段で9ビットずつ使うので 36 ÷ 9 = 4段になります。各段の表は 512項目 × 8バイト = 4 KBで、ちょうど1ページに収まるように作られています。TLBミスのときは最大4回メモリを読む必要があるため、TLBやページテーブルの項目をキャッシュする工夫が重要です。3段は39ビットの場合の段数です。

  • A. 2段では18ビットしか表せません。
  • B. 3段は仮想アドレスが39ビットの場合です。
  • C. 正しい。(48 − 12) ÷ 9 = 4段です。
この分野を解く 分野ページへ

OSとハードウェアのほかの問題

  1. ページテーブルの各項目にふつう含まれる情報の組み合わせとして正しいものはどれか。
  2. プロセスを複製するときにコピーオンライトを使う利点として正しいものはどれか。
  3. デマンドページングの説明として正しいものはどれか。
  4. ページ置き換えのクロック方式(セカンドチャンス方式)で、各ページの参照ビットを使う目的はどれか。
  5. ページ置き換えでFIFO方式を使うと、物理メモリのページ数を増やしたのにページフォルトが増える場合がある。この現象を何と呼ぶか。