Q: Type 1 与 Type 2 虚拟机监控程序有何区别?
A: Type 2 虚拟机监控程序运行在主机操作系统之上,而 Type 1 虚拟机监控程序则没有主机操作系统。
Q: Secure 状态和 Non-secure 状态分别有多少个 IPA 空间?
A: Secure 状态有两个 IPA 空间:Secure 和 Non-secure。Non-secure 状态有一个 IPA 空间。
Q: 虚拟中断可以在哪些异常级别被触发?
A: 虚拟中断只能在 EL0 或 EL1 中执行时触发,并且只有在通过设置 HCR_EL2 中相应的路由位启用的情况下才能触发。
Q: 什么是 SMMU?如何利用 SMMU 进行虚拟化?
A: SMMU(System MMU)为非处理器主设备提供地址转换服务。在虚拟化中,SMMU 可用于使主设备(例如 DMA 控制器)看到与其分配的 VM 相同的内存视图。
Q: HCR_EL2.E2H 位如何影响在 EL2 中执行的 MSR TTBR0_EL1, x0 指令?
A: 当 E2H==0 时,该指令写入 TTBR0_EL1。当 E2H==1 时,写操作将被重定向到 TTBR0_EL2。
Q: 什么是 VMID 以及它的用途是什么?
A: VMID 是虚拟机标识符。它用于标记 VM 的 TLB 条目,以便多个 VM 的 TLB 条目可以同时存在于 TLB 中。
Q: 什么是trap,它在虚拟化中如何使用?
A: trap导致本应合法的操作触发异常,将操作陷入到更高特权级别的软件中。在虚拟化中,trap允许虚拟机监控程序检测某些操作何时执行,并模拟这些操作。