OSとハードウェア

ページフォルトが起こる場合として正しいものはどれか。

  1. Aキャッシュにデータがなく、主記憶から読み込んだとき
  2. Bアクセスしたページが、物理メモリに割り当てられていないとき
  3. CTLBに変換結果があり、すぐに物理アドレスが分かったとき
答えと解説を見る

正解:B. アクセスしたページが、物理メモリに割り当てられていないとき

ページフォルトは、アクセスしたページのページテーブルの項目が無効、つまり物理メモリに割り当てられていない(ディスクに追い出されている、まだ読み込んでいないなど)ときや、読み出し専用のページに書き込むような許されないアクセスをしたときに起こる例外です。OSがページを用意して命令をやり直します。キャッシュミスはハードウェアだけで処理され、例外にはなりません。TLBにあればすぐ変換できるので、フォルトは起きません。

  • A. キャッシュミスはハードウェアだけで処理され、例外になりません。
  • B. 正しい。ページが物理メモリにないときに起こる例外です。
  • C. TLBにあれば変換がすぐ終わり、フォルトは起きません。
この分野を解く 分野ページへ

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

  1. 追い出されてディスクにあるページにアクセスしてページフォルトが起きたとき、OSが行う処理の流れとして正しいものはどれか。
  2. ページテーブルを1段ではなく多段(階層型)にする主な理由はどれか。
  3. 仮想アドレスが32ビット、ページサイズが4 KB、ページテーブルの1項目が4バイトのとき、1段のページテーブルの大きさはいくらか。
  4. 仮想アドレスのうち48ビットを使い、ページサイズ4 KB、各段の表が512項目(9ビット)の多段ページテーブルでは、何段の表をたどる必要があるか。
  5. ページテーブルの各項目にふつう含まれる情報の組み合わせとして正しいものはどれか。