OSとハードウェア

ゲストもホストも4段のページテーブルを使う入れ子ページングで、TLBミスが起きたとき、最悪で何回のメモリアクセスが必要になるか。

  1. A8回
  2. B16回
  3. C24回
答えと解説を見る

正解:C. 24回

ゲストのページテーブルの4段の各表の場所はゲスト物理アドレスで書かれているので、それぞれを読む前にホストの4段の表で変換する必要があります。ゲストの各段で「ホストの4回 + ゲストの表の1回」の5回、4段で20回になり、最後に得たゲスト物理アドレスのデータ自体をホストの4段で変換する4回を足して24回です。式では (4 + 1) × (4 + 1) − 1 = 24 です。8回は4段を2回たどるだけと考えた値で、表の場所の変換を見落としています。

  • A. 8回はゲストの表の場所の変換を見落とした値です。
  • B. 16回は4 × 4と単純に掛けた値です。
  • C. 正しい。(4 + 1) × (4 + 1) − 1 = 24回です。
この分野を解く 分野ページへ

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

  1. 仮想マシンのOSが特権の必要な命令を実行したとき、ハイパーバイザに処理が移り、ハイパーバイザがその命令の効果を代わりに再現する方式を何と呼ぶか。
  2. 準仮想化(パラバーチャライゼーション)の説明として正しいものはどれか。
  3. コンテナと仮想マシンの違いとして正しいものはどれか。
  4. 多くのOSで、カーネルの領域を各プロセスのアドレス空間の一部(例えば上位の範囲)に割り当てておき、ページテーブルの保護ビットでユーザモードからのアクセスを禁止している。この配置の主な利点はどれか。
  5. ページサイズが4 KBのとき、仮想アドレスのうちページ内の位置(オフセット)を表すのは何ビットか。