缩写说明:
* pfn: host page frame number,宿主机中某个物理页的帧数
* hpa: host physical address,宿主机的物理地址
* hva: host virtual address,宿主机的虚拟地址
* gfn: guest page frame number,虚拟机中某个物理页的帧数
* gpa: guest physical address,虚拟机的物理地址
* gva: guest virtual address,虚拟机的虚拟地址
* pte: page table entry,指向下一级页表或者页的物理地址,以及相应的权限位
* gpte: guest pte,指向GPT中下一级页表或者页的gpa,以及相应的权限位
* spte: shadow pte,指向EPT中下一级页表或者页的hpa,以及相应的权限位
* tdp: two dimentional paging,也就是我们所说的EPT机制
问题:
1.什么是MMU?
Memory manage unit
,也就是内存管理单元,一般封装于cpu的内部,主要职责为将虚拟地址翻译为物理地址,相当于一个cpu和内存之前的一个中间转换层,对软件来说是不可见的,对上层软件的开发者来说并不需要关心他,但是对于OS移植或底层驱动开发者来说,则必须清楚如何辅助MMU完成地址转换。
2,页/页帧/页表/页表项
MMU值负责把虚拟地址映射为物理地址,但凡涉及到映射都需要解决两个问题:映射的最小单位,映射的规