当访客程序需要不分配内存时,应首先触发的内存,访客OS页故障或主机EPT违反?
我想知道这个问题。如果我在启用EPT分页的KVM中启动访客操作系统时,当Guest OS程序首先需要内存时,应首先触发内存,访客OS页面故障或EPT违反?
我认为,Gurst OS CR3的价值是客人的物理地址。如果Guest OS想要翻译其虚拟地址,它将访问其CR3指向的页面表。此时,EPT将转换CR3中的客人物理地址以托管物理访问访客页面表。如果没有相应的条目,它将在访客OS页面故障之前通过EPT-violation引起VM exiT。当KVM下次输入访客操作系统时,将触发页面故障。
我不知道我的想法是否正确,有人可以帮助我。
谢谢,问候!
I'm wondering about this question. If I start a guest OS in kvm with EPT paging enabled, when the guest OS program first requires the memory, which should be triggerd first, guest OS page fault or EPT violation?
In my opinion, the value in gurst OS CR3 is a guest physical address. If guest OS wants to translate its virtual address, it will visit its page table pointed by CR3. At this time the EPT will translate the guest physical address in CR3 to host physical to access the guest page table. If there don't have corresponding entries, it will cause a VM-Exit by EPT-violation before guest OS page fault. When kvm enter guest OS next time, a page fault will be triggered.
I have no idea whether my thought is right or not, could someone help me about it.
Thanks and regards!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论