KVM,pKVM on arm64

本文详细介绍了KVM在arm64平台上的两种模式:non VHE模式和VHE模式。non VHE模式中,KVM模块在host kernel @EL1和EL2之间切换,导致一定的性能损耗;而VHE模式通过让host kernel运行在EL2,减少了切换,提高了效率。在两种模式下,VM都需要完全信任host kernel,且GIC虚拟化和设备通过IOMMU的配置都在host kernel中进行。
摘要由CSDN通过智能技术生成

本文适合对KVM构架和arm CPU构架有一定了解的读者。讲解non VHE KVM, VHE KVM和Protected KVM

查看原文:
https://mp.weixin.qq.com/s/UhZoNayBlc8tzBgqv9n1RA

在这里插入图片描述

KVMon arm64 – non VHE mode
在armv8/v9non VHE模式时,kvm部分运行在hostkernel@EL1,部分运行在EL2.
在hostkernel里面的KVM当成其kernel module, 主要负责给VM分配管理内存,创建VM的stage2 MMU页表,处理一些trap,虚拟GIC和timer,将不能处理的trap转交给userspace处理等
在EL2的KVM部分主要是设置EL2才有权限配置的trap,stage2 MMU, GIC/Timer寄存器,并负责host/VM/hypervisor的context switch

Hostkernel对包括VM内存在内的所有内存有管理和访问权限
GIC的虚拟化的实现和为device pass-through服务的IOMMU设置也是在host kernel里配置的
VM需要完全信任host kernel
non VHE模式因为有比较多的host EL1-- EL2 hypervisor– VM EL1/EL0的切换,一定程度上性能有所损耗

KVMon arm64 – VHE mode
为了减少nonVHE模式host EL1-- EL2 hypervisor–VM EL1/EL0的切换损耗,armv8.1引入VHE模式的支持,通过修改构架使host ker

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值