ARM虚拟化

本文探讨了ARM架构下的虚拟化实现方法,特别是硬件辅助虚拟化的原理。解释了ARM为何不直接符合经典可虚拟化模型,并介绍了两种主要的虚拟化实现途径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ARM目前采用的是硬件辅助虚拟化的方式,即在处理器模式上增加了EL2级别,将hypervisor运行在EL2上,那为什么需要这么做呢?

1、虚拟化在业界上有一种说法叫做“经典可虚拟化模型”,也就是要求cpu的敏感指令属于特权指令的一个子集,这样在VM里访问敏感指令的时候就会触发异常并被hypersiver捕获;

2、ARM(x86也类似)的模式是不符合“经典可虚拟化模型”的,也就是说ARM有很多敏感指令都不属于特权指令,因此ARM的虚拟化实现主要有两种方式:

 1)、修改Guest操作系统,将其敏感指令替换成特权指令,并在hypervisor中模拟其敏感指令的运行;

 2)、通过硬件辅助虚拟化,将hypervisor与VM kernel运行在不同的模式下,VM运行在一个受控模式,hypervisor可以配置哪些敏感指令是否触发异常;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值