传统 x86(Intel-VT 和 AMD-SVM 之前)是否支持 Type 1 Hypervisor?

问题描述 投票:0回答:1

我熟悉动态转换和陷阱与仿真(Type1 Hypervisor)概念。让我困惑的是,很多文章通常将动态翻译和类型1虚拟机管理程序结合起来,如下图。

https://img.brainkart.com/imagebk12/gSd5NSZ.jpg

在我看来,当使用动态翻译(例如qemu)时,我们通常会模拟一组假CPU寄存器并根据客户指令更新它们,这意味着模拟代码通常具有与虚拟机管理程序相同的特权模式。但对于类型 1 管理程序,它们应该处于不同的特权模式。

因此,我想知道在Intel-VT/AMD-SVM(硬件辅助虚拟化)出现之前,传统x86是否支持类型1虚拟机管理程序?如果是,它如何模拟未能跨不同权限引发陷阱的敏感指令?

x86 virtual-machine emulation cpu-architecture qemu
1个回答
0
投票

旧版 x86 是否支持类型 1 虚拟机管理程序?

是的,确实如此。

如果是,它如何模拟未能跨不同权限引发陷阱的敏感指令?

通过使用二进制翻译:敏感指令被替换为正确模拟敏感指令行为的其他指令。

© www.soinside.com 2019 - 2024. All rights reserved.