arm - 在 ARM 管理程序 (EL2) 上
问题描述
问题是关于 ARMv8 EL2 Hypervisor。比如说,在 AARCH64 执行状态下运行的操作系统想要使用 EL2 功能来为像 qemu 这样的模拟器“加速”虚拟化。我是否理解正确,为了实现这一点,主机操作系统应该允许对 EL1/EL0 中的每个实体进行阶段 2 转换(当然,在 EL2 中运行时,例如在加载器阶段),包括自身在内?
正如我所看到的,第 2 阶段转换启用/禁用是一个全局的东西,通过
HCR_EL2.VM
位控制,所以没有办法例外,这意味着主机操作系统本身成为运行在 VM 上的客户操作系统之一,唯一的例外从其他来宾操作系统中,它也提供了 Hypervisor,在某种程度上包含在其中,并且因为它在此 EL 中启动,所以它获取并控制它。
这是对的吗?ARM手册中的主题和表达方式相当沉重,即使阅读多次也不容易理解,因此我感谢那些处理它的人的帮助。:)
解决方案
推荐阅读
- hibernate - spring boot jpa hibernate - 获取主详细数据
- c - 程序没有错误但仍然崩溃
- jupyter-notebook - Jupyter Notebook“笔记本已更改”不断出现
- javascript - 具有固定宽度和高度的项目的网格
- r - R : 从主脚本调用外部子程序 R 脚本以避免等待子程序
- python - CountVectorizer 不尊重正则表达式
- php - 内部 api 调用将 $_SERVER['REQUEST_METHOD'] 更改为 GET
- android - 从 Android Studio 终端运行 Android 模拟器
- python - pyQt 和 opencCV s pyQt 都存在并使程序崩溃
- algorithm - 多个负循环的贝尔曼福特算法