PCR*_*PCR 3 virtualization virtual-machine
我了解陷阱和模拟是什么,但是我在努力理解什么是二进制转换以及它与陷阱和模拟有何不同。我对这个主题还很陌生,并且正在尝试从2006年的一篇论文中了解此介绍:
“直到最近,x86架构仍不允许经典的陷阱和仿真虚拟化。用于x86的虚拟机监视器(例如VMware®Workstation和Virtual PC)已使用来宾内核代码的二进制翻译。但是,英特尔和AMD现在已经引入了架构扩展以支持经典虚拟化。”
我还不了解上下文陷阱中的“ 经典虚拟化 ”和模拟与二进制翻译的关系。任何帮助理解这些术语将不胜感激。
小智 5
我认为此链接将为您提供帮助。我试图对其进行总结,有关更多信息,请参见链接。
每当来宾操作系统尝试执行这些特权操作之一时,处理器都会“捕获”指令并将控制权移交给主机操作系统或管理程序,以便它可以执行所需的操作,然后将控制权返回给来宾。但是大多数现实世界的指令集(包括x86)在设计时都没有考虑虚拟化。结果,存在特权指令没有任何相应的陷阱功能。
二进制翻译直接解决了这个问题。它不依赖处理器本身来检测特权指令,而是使用虚拟化软件来检查软件中的指令流,并且每当虚拟化软件检测到有问题的指令时,它都会即时对其进行重写,通常用一种手册来代替陷阱,它将在适当的时候将控制权移交给管理程序。希望这对您有所帮助。