VHOST-SCSI代码分析(0)VHOST概述

        与VIRTIO框架相比,VHOST将设备放到HOST上,让Guest和Host Kernal Space之间共享virtqueue,减少Exception Level切换。

        对于数据的传递,依次经历:Guest UserSpace(EL0)-> Guest KernelSpace(EL1)-> KVM(EL2)->VHOSTSCSI device (EL2)-> Target core/SCSI layer(EL2)。

        在虚拟机中,VHOST SCSI设备仍是PCIE设备,同时也是VIRTIO设备,这里对于虚拟机中呈现与VIRTIO-SCSI一样,因此驱动执行过程和VIRTIO-SCSI完全一样。

        在QEMU中,它也会模拟VHOST SCSI设备,但对于数据的传递机制,并没有设置,因此在数据传递时并不会切换到QEMU中。但对于配置空间等模拟,仍在QEMU中模拟。

        在HOST上,需要模拟VHOST SCSI设备的数据传递部分,包括ioeventfd用于虚拟机通知HOST数据准备好,irqfd用于Host通知虚拟机中断注入。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值