0

我一直在努力获取这方面的信息,但仍然没有任何可靠的信息。所以,到目前为止我学到的是 IOMMU 将 DMA 提供的 IOVA 转换为物理地址,并从/向内存读取或写入。我的问题如下:

1) IOMMU 是否为每个设备存储不同的内存映射?每个设备是否在其虚拟地址空间中看到从零开始的地址范围

2)这些IOMMU内存映射存储在哪里?

3) 如果每个设备都在其虚拟地址空间中看到从零开始的虚拟地址,IOMMU 如何知道请求来自哪个设备?

4) 设备是否还传输某种设备特定 ID 或 IOMMU 识别并使用它来取消映射 IOVA 并保护该设备看到或写入的其他内存地址?

4

0 回答 0