ゲスト OS のゲスト ページ テーブルに変更があった場合、ハイパーバイザーはどのように変更を反映しますか。ゲスト ページ マッピングとシャドウ ページ マッピングの間の対応はどのように維持されますか?
1 つの方法は、メモリ アドレスの書き込み保護です。ゲスト ページ テーブルへの書き込みがあるときはいつでも、シャドウ ページ テーブルへの対応する変更を保証する適切なハンドラーがあります。この分野でさらにいくつかの情報を得ることができますか?
ゲスト OS のゲスト ページ テーブルに変更があった場合、ハイパーバイザーはどのように変更を反映しますか。ゲスト ページ マッピングとシャドウ ページ マッピングの間の対応はどのように維持されますか?
1 つの方法は、メモリ アドレスの書き込み保護です。ゲスト ページ テーブルへの書き込みがあるときはいつでも、シャドウ ページ テーブルへの対応する変更を保証する適切なハンドラーがあります。この分野でさらにいくつかの情報を得ることができますか?
ハードウェアがネストされたページングをサポートしている場合、ゲスト OS は、物理ページをゲストのアドレス空間にフォールトさせる以外、ハイパーバイザーの関与なしでページ テーブルを管理します。それ以外の場合は、何らかのシャドー ページ テーブルが必要ですが、実装は大きく異なります。一部のハイパーバイザーは、ゲスト OS のページ フォールト処理命令をトラップしてハイパーコールに書き換え、シャドウ ページ テーブルを維持するオーバーヘッドを削減します。準仮想化は、これを処理するためにゲスト カーネルに負担をかけます。ネストされたページングを使用しないハードウェア仮想化は、ゲスト ページ フォールト時にハイパーバイザーにトラップします。これは、ソフトウェアのみの方法よりも低速ですが、バグが発生しにくくなります。