内存页表
在物理机中,操作系统需要维护内存页表,该页表上记录了应用所使用的虚拟地址到实际内存物理地址的映射。
虚拟内存页表 物理服务器经过虚拟化之后,VMM需要维护由HVA到GPA的内存页表,同时Guset OS也会有自己的系统页表。那么此时从Guest OS下发的内存请求,到物理服务器的硬件这个过程就会消耗大量的性能,甚至会发生故障。
MMU 传统MMU(内存管理单元)负责虚拟地址映射为物理地址。 软件层面的影子页表技术。 硬件层面的 EPT (Intel) / RVI (AMD) 。
影子页表(shadow page table):VMM在宿主机内核中为虚拟机进程维护了一个虚拟机的虚拟地址到宿主机物理地址的页表(将三张页表进行整合),这个页表和虚拟机内核的页表同步更新。
利用TLB(translation look-aside buffer)转换查找缓冲器实现虚拟机虚拟地址到宿主机物理地址“一步到位”的自动映射。 |