首页 > 其他分享 >IO MMU及其优缺点

IO MMU及其优缺点

时间:2023-07-15 21:33:19浏览次数:48  
标签:DMA MMU IOMMU 优缺点 物理地址 IO 外设

IO MMU

Input–output memory management unit - Wikipedia

IOMMU是一个连接DMA总线和主存的内存管理单元。它将外设虚拟地址映射为主存的物理地址。

image-20230714110327654

优点

相比DMA的优点为:

  1. 主存中可以分配大片不连续的内存,IOMMU可以将外设连续的虚拟地址映射到离散的物理地址中

  2. 当外设由于地址空间不够长,不支持直接对整个物理地址空间取址时,通过IOMMU仍然可以对整个物理内存取址

  3. 可以防止恶意外设进行攻击,或者错误外设尝试错误地数据传输。OS是控制MMU和IOMMU的唯一控制者,IO MMU的映射表对外设不可见。

  4. 虚拟化:当客户机使用硬件外设时,硬件可能是通过DMA直接访问内存(硬件通过DMA发出物理地址),但由于硬件只知道guest物理地址,但不知道host物理地址,也不知道guest物理地址到host物理地址的映射关系,可能会造成错误。如果hypervisor干预IO操作来实现映射则可以避免这个问题,但会带来IO操作的延时。

    IOMMU可以很好地解决这个问题,通过将硬件请求的guest物理地址重映射到host物理地址。

缺点

相比DMA的缺点是:

  1. IOMMU地址翻译和管理会带来性能开销
  2. IO页表会带来内存开销

标签:DMA,MMU,IOMMU,优缺点,物理地址,IO,外设
From: https://www.cnblogs.com/fyqs/p/17556991.html

相关文章

  • 会声会影2023旗舰版Corel VideoStudio Ultimate 2023 V26.0.0.136整合盘版本
    会声会影2023旗舰版CorelVideoStudioUltimate2023V26.0.0.136整合盘版本是一款有趣且直观的视频编辑器,包含高级工具和高级效果,智能功能和最佳性能的高级视频编辑软件,将您最美好的时刻和生活体验变成令人惊叹的电影。会声会影2023下载地址:https://souurl.cn/kdsHII会声会影2022......
  • 十七、QPropertyAnimation属性动画
    1.几何动画(1)setStartValue方法设置开始动画(2)setEndValue方法设置结束动画(3)setDuration方法设置动画时间(4)setLoopCount方法设置动画循环次数(5)setEasingCurve方法设置动画的缓和曲线(6)start方法开始执行动画(7)setKeyValueAt方法设置某个时间段的动......
  • Python 并发编程之IO模型(转载)
    Python并发编程之IO模型https://www.cnblogs.com/linhaifeng/articles/7454717.htmlIO模型介绍为了更好地了解IO模型,我们需要事先回顾下:同步、异步、阻塞、非阻塞同步(synchronous)IO和异步(asynchronous)IO,阻塞(blocking)IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别......
  • 华普物联RS485/RS232双串口服务器 转以太网串口 RJ45 河南华普 HPIOT
    一款工业级串口服务器,实现了RJ45网口与RS485或RS232之间的数据透明传输;支持Modbus网关功能;支持多种保活机制;支持注册包+双向心跳包、虚拟串口、自动重连等功能。公司介绍华普物联科技产品包括物联网网关、工业无线路由器、LoRa基站、DTU、RTU、远程IO等产品,以及支持边缘计算......
  • 【性能测试】性能监控-python编写(CPU | 内存 | 磁盘io)占比监控脚本
    一、主要通过Python脚本实现对linux环境(CPU|内存|磁盘io)监控脚本示例:importtimeimportsubprocess#获取CPU使用率defget_cpu_usage():#系统CPU占比=系统态占比+空闲态占比=3.2%+36.5%=39.7%cpu_usage=subprocess.check_output("top-bn1......
  • axios详解以及完整封装方法
    """一、axios是什么Axios是一个基于promise网络请求库,作用于node.js和浏览器中。它是isomorphic的(即同一套代码可以运行在浏览器和node.js中)。在服务端它使用原生node.jshttp模块,而在客户端(浏览端)则使用XMLHttpRequests。axios有以下特性:从浏览器创建X......
  • [论文速览] A Closer Look at Self-supervised Lightweight Vision Transformers
    Pretitle:ACloserLookatSelf-supervisedLightweightVisionTransformersaccepted:ICML2023paper:https://arxiv.org/abs/2205.14443code:https://github.com/wangsr126/mae-literef:https://mp.weixin.qq.com/s/7FiDLYBZiAX-xkW-dZBU9Q关键词:lightweght,ViT......
  • AI绘画Stable Diffusion实战操作: 62个咒语调教-时尚杂志封面
    今天来给大家分享,如何用sd简单的咒语输出好看的图片的教程,今天做的是时尚杂志专题,话不多说直入主题。还不会StableDiffusion的基本操作,推荐看看这篇保姆级教程:AI绘画:StableDiffusion终极炼丹宝典:从入门到精通飞书原文链接:AI绘画StableDiffusion实战操作:62个咒语调教-时尚杂......
  • VS(VisualStudio) 远程调试 (RemoteDebugger)
    VS远程调试方法,下面用一张图说明:参考:https://blog.csdn.net/qq_33538554/article/details/98957450,下面是详情操作:注意:另一篇博文可以参考:https://mp.weixin.qq.com/s/G4m5v7l4kCwvM9LtKu0zVQ......
  • python实现iou计算
    importnumpyasnpdefiou(box1,box2):x1,y1,x2,y2=box1w1,h1,w2,h2=box2left_max=max(x1,w1)right_min=min(x2,w2)top_max=max(y1,h1)bot_min=min(y2,h2)ifleft_max>=right_minortop_max>=bot_......