当前位置: 首页 > news >正文

wordpress 5.0多站点相册特效手机网站

wordpress 5.0多站点,相册特效手机网站,南平网站建设wzjseo,衡水城乡建设局网站系列文章目录 提示#xff1a;本系列主要记录工作过程中遇到的操作系统基础概念以及工作原理 第一章 操作系统之IOMMU 文章目录 系列文章目录1. 设备访问内存的几种主要方式1.1 传统的 I/O 访问#xff08;程序控制 I/O#xff09;1.2 直接内存访问#xff08;DMA#xf…系列文章目录 提示本系列主要记录工作过程中遇到的操作系统基础概念以及工作原理 第一章 操作系统之IOMMU 文章目录 系列文章目录1. 设备访问内存的几种主要方式1.1 传统的 I/O 访问程序控制 I/O1.2 直接内存访问DMA1.3 设备驱动与内存映射 2. IOMMU简介3. IOMMU的作用3.1 提高了内存安全性3.2 解决 32 位设备的地址扩展问题 4. 总结 1. 设备访问内存的几种主要方式 1.1 传统的 I/O 访问程序控制 I/O 在最早的计算机系统中设备通过 CPU 执行 I/O 操作来访问内存。这种方式也称为 程序控制 I/O。 操作方式设备通过 CPU 发起 I/O 请求CPU 会根据程序中的指令手动读取或写入内存。 例如磁盘控制器向内存中写入数据时CPU 会通过一系列指令来控制数据传输。缺点CPU 必须参与每次数据传输这样不仅增加了 CPU 的负担还导致了 CPU 的效率低下因为它需要等待设备完成数据传输。这种方法效率低尤其是在大量数据传输时。 1.2 直接内存访问DMA DMADirect Memory Access 是一种提高设备访问内存效率的方法。 操作方式在 DMA 模式下设备可以直接与内存进行数据交换无需 CPU 参与数据传输过程。特点DMA模式下的关键硬件叫DMACController我理解该硬件的诞生就是为了将设备访问内存时cpu的职责进行了析出从而让cpu做其它更重要的事毕竟cpu是万金油啥都需要它。 1.3 设备驱动与内存映射 在现代操作系统中设备访问内存通常是通过设备驱动程序进行的。驱动程序负责与硬件设备进行通信并将设备的内存空间映射到进程的虚拟地址空间中。 操作方式驱动程序通过操作系统提供的接口将设备内存映射到用户空间或内核空间。当应用程序或操作系统需要访问设备时它直接操作映射到内存中的数据。 这种方式通常用于高性能的 I/O 操作如网络通信、显卡渲染等。 2. IOMMU简介 IOMMUInput/Output Memory Management Unit是内存控制器 memory controller的一部分用于将设备虚拟地址也可称为I/O地址或设备地址转换为物理地址。 IOMMU的概念类似于MMUMemory Management Unit区别在于 IOMMU将设备虚拟地址翻译为物理地址MMU负责将CPU虚拟地址翻译为物理地址。 在设备做DMA访问内存的时候系统返回给设备驱动的不再是物理地址而是虚拟地址 这个地址一般叫IOVA设备访问内存时由IOMMU来将这个设备虚拟地址转换为物理地址。 从上图可知IOMMU是DMA直接内存访问即设备与内存直接通信而无需经过CPU过程中的一个环节。1 因此IOMMU可以看作一种机制也可以说IOMMU是DMA的一种实现方式。 3. IOMMU的作用 IOMMU的引人带来了哪些好处呢 提高了内存安全性扩展设备地址访问范围 3.1 提高了内存安全性 传统方式设备直接访问物理地址设备可能会访问到不属于自己的内存区域例如破坏操作系统的内存结构造成数据泄漏或系统崩溃。 相反基于IOMMU机制的DMA内存访问方式IOMMU 可以在内存访问之前进行检查确保设备只能访问其分配的内存区域防止设备访问操作系统的核心数据结构或其他虚拟机的内存这对于防止设备对其他虚拟机或操作系统内存的恶意或意外访问至关重要。 结论 IOMMU使得设备无法直接访问物理地址大大增加了设备进行DMA攻击的难度。 3.2 解决 32 位设备的地址扩展问题 设备访问 4GB 以上内存的问题许多传统的设备例如 32 位 DMA-capable 设备、网卡、硬盘控制器等不能直接访问超过 4GB 的内存因为它们只能使用 32 位的地址空间。但是现代操作系统的内存往往大于4GB。 如果设备申请DMA设备直接访问内存时内核为设备分配的DMA buffer地址高于4GB简称为high buffer则设备将无法寻址到它。 IOMMU通过地址转换提供了解决方案IOMMU 需要提供一种间接方式让设备能够通过低地址的缓冲区low buffer来与高地址的内存high buffer进行交互。这一过程通常被称为 “sync” 或 “bounce” 机制具体过程如下 设备请求访问高地址内存假设设备需要访问 4GB 以上的内存high buffer但设备无法直接寻址到高地址因为它只能使用 32 位地址。 IOMMU 为设备分配低地址内存low bufferIOMMU 会为设备分配一个低于 4GB 的内存区域low buffer这块内存与高地址内存high buffer的大小一致。 设备会通过低地址缓冲区low buffer进行 DMA 操作。虽然设备只能访问 low buffer但通过 IOMMU 的映射它的请求会在后台被转换成访问高地址内存high buffer。 IOMMU 进行数据同步设备向低地址缓冲区low buffer写入数据后IOMMU 会将 low buffer 中的数据复制到高地址缓冲区high buffer。反之CPU 或其他系统组件向高地址缓冲区high buffer写入数据时IOMMU 会将数据从 high buffer 复制到低地址缓冲区low buffer。 数据传递与同步通过这种方式尽管设备无法直接访问超过 4GB 的内存但它通过 low buffer 间接完成了数据读写。 结论IOMMU 的“sync”或“bounce”机制确保了设备和 CPU 可以通过这两个内存区域交换数据从而实现了高地址内存的间接访问。 4. 总结 本文主要介绍了设备访问内存的几种方式以及IOMMU的基本概念、主要作用。 后续有时间再学习下虚拟化中IOMMU的作用2。 Linux x86-64 IOMMU详解一——IOMMU简介 ↩︎ linux内核中IOMMU 基础架构介绍 ↩︎
http://www.dnsts.com.cn/news/102398.html

相关文章:

  • 东莞建设通网站wordpress 导航 插件
  • 唱片公司网站模板怎么用net123做网站
  • 荥阳做公司网站的公司网站做优化按点击收费
  • 郑州网站建设冫汉狮网络亚网站建设
  • 如何快捷建企业网站vi设计素材
  • 做物流网站计划永久免费补单系统
  • 网站开发多少钱手机网站怎么写
  • 免费网站建设推广服务asp.net 4.0网站开发
  • vue网站开发wordpress视频曹鹏
  • 加快网站收录网站建设步骤完整版
  • 服务器系统搭建网站源码seo查询外链
  • 西安app开发公司排名搜索引擎推广与优化
  • 网络管理系统中故障管理的目标是线上seo关键词优化软件工具
  • 衡阳城乡建设部网站首页网站建设的实训技术总结
  • 建设网站的技术校园招聘网站策划书
  • 免费的建筑设计网站群晖nas建设网站
  • 哈尔滨专业做网站推广怎么推广公众号
  • 邯郸做网站代理html电影网站模板下载工具
  • 诚信网站备案中心外贸流程及详细步骤
  • 福建省住房和城乡建设厅门户网站ueditor 插件 wordpress
  • 界面网站的风格企业网站开发 外文文献
  • 湖南建设网站公司近五年网站开发参考文献
  • 教育网站建设改版网推
  • 手机网站自适应代码wordpress最佳插件
  • 建设执业资格注册中心网站网站搭建类型
  • 网站建设用户调查报告网站建设 碧辉腾乐
  • 做网站定金是多少wordpress付费内容
  • 信息图表设计网站wordpress在线浏览pdf
  • 个人网站开发网站建设措施
  • 厦门seo网站优化云服务器一年多少钱