如何解决英特尔虚拟化 (VMX/VT-x) 来宾通用寄存器
我刚刚开始学习硬件辅助虚拟化,并阅读了有关 Intel VMX/VT-x 如何在高层次上工作的内容,但有些事情我不太清楚,希望您能帮助我更好地理解。我已经找到了这个问题 (Intel virtualization technology : how to load guest general purpose register?),但对我没有帮助。
- 英特尔手册说,虚拟控制机结构 (VCMS) 包含管理新的非 root 模式所需的信息。 VCMS 的一部分是 Guest State,它应该存储诸如 %cr3 和 %idtr 寄存器之类的内容。手册中这样说:“处理器的状态是在虚拟机进入期间从来宾状态加载的,并在虚拟机退出期间存储回这里”。那么这些加载和存储操作是否在虚拟机进入和虚拟机退出期间通过英特尔 VT-x 技术在硬件中自动实现?这是正确的吗?
- 如果上面的答案是“是”,那么来宾的普通通用寄存器的内容如何存储在 VM 出口并加载回 VM 输入?这应该通过 VMM/Hypervisor 的特定实现来完成吗?如果“是”,您能否给我一个提示,为什么 %cr3、%idtr” 等的加载和存储是自动完成的,而这不是gpr 的情况?
如果这些问题很愚蠢,我很抱歉,但我刚刚开始学习与虚拟化相关的东西。感谢您的帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。