QNX SMMU/IOMMU

本文介绍了QNX系统中的SMMU hypervisor客户端框架,包括vdev-smmu虚拟设备的功能,如IOMMU/SMMU服务和内存映射。同时,文章详细阐述了调试过程,如SMMU Fault的两种类型及其对应的寄存器位,帮助开发者理解并解决SMMU相关的问题。
摘要由CSDN通过智能技术生成

1、SMMU hypervisor客户端框架

虚拟机中的vdev-smmu虚拟设备,提供smmu-*.so库中的功能子集。

1.1

为了支持smmu进程运行,host必须包含vdev-smmu虚拟设备,此设备包含如下功能:

  • IOMMU/SMMU服务

vdev-smmu 虚拟设备为客户端提供IOMMU/SMMU的服务:接收客户端smmu服务传递的配置信息,拒绝DMA设备访问允许区域外的设备,并将消息返回给设备,记录这些尝试。

  • 内存映射

      提供一种机制,使得虚拟机直通给客户机的DMA设备能够和主机的smmu协同工作,报中对物理内存的访问符合安全要求。

vdev-io-smmu.so由host来加载也必须加载libfdt.so库,smmu_client.so由其他(例如fastrpc)客户端来加载。

如下图展示了hypervisor客户端如果传递DMA设备到指定的内存区域:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值