0

虚拟机管理程序在客户机操作系统的访客页面表中发生更改时如何反映更改。 访客页面映射和影子页面映射之间的对应关系如何维护?硬件虚拟化 - 虚拟机管理程序查询

一种方法是写保护内存地址。无论何时写入到客户页面表中,都会有一个适当的处理程序来确保相应的更改到影子页表中。 我可以在这方面有更多的投入吗?

回答

0

如果硬件支持嵌套分页,则客户操作系统管理其页表,没有管理程序参与,而是将故障物理页面插入到客户地址空间中。否则,需要某种类型的影子页面表,但实现方式差异很大。一些虚拟机管理程序会将访客操作系统页面错误处理指令捕获并重写为超级调用,以降低维护影子页表的开销。半虚拟化将来宾内核的负担加以处理。没有嵌套分页的硬件虚拟化会在guest虚拟机页面错误上陷入虚拟机管理程序,速度较慢,但​​比纯软件方法的错误率低。