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

手机版刷赞网站建设长春网站建设方案咨询

手机版刷赞网站建设,长春网站建设方案咨询,广告seo是什么意思,北京网络营销培训一、DMA的引入 Non-DMA:CPU直接与设备进行数据交互,CPU的负载会随着数据的读写而增加; DMA:CPU不参与数据的直接传输,DMA Controller负责Device与Memory之间的数据搬运,并以中断信号的形式通知CPU&#xf…

一、DMA的引入

Non-DMA:CPU直接与设备进行数据交互,CPU的负载会随着数据的读写而增加;
DMA:CPU不参与数据的直接传输,DMA Controller负责Device与Memory之间的数据搬运,并以中断信号的形式通知CPU;
可以看出,DMA可以提高CPU的使用率。

二、IOMMU与DMA的关系

可以看出,IOMMU是DMA过程中的一环,也是实现DMA的一种手段。

三、IOMMU的作用

1、IOMMU是设备访问物理地址的媒介, IOMMU使得设备无法直接访问物理地址,大大增加了设备进行DMA攻击的难度。(安全性)

2、部分设备的引脚数较少,导致其位数较低,无法寻址到整个物理内存空间。(成本原因?越多引脚意味着更大的寻址范围(越多的bit位))

以目前主流的32位设备为例,其在物理内存中直接寻址的范围是[0, 4GB)。但是,现代操作系统的内存往往大于4GB。如果设备申请DMA时,内核为设备分配的DMA buffer的地址高于4GB(以下简称为“high buffer”),则设备将无法寻址到它。
有了IOMMU以后,IOMMU就可以在[0, 4GB)范围内分配一段与高地址buffer长度相同的内存,让设备能够直接寻址(以下称为“low buffer”)。设备向low buffer写入后,IOMMU就会将low buffer中的内容,复制到high buffer,而后通知CPU从high buffer读取内容。反之亦然——CPU向high buffer写入后,IOMMU就会将high buffer中的内容,复制到low buffer,而后通知设备从low buffer读取内容。这样,CPU和设备都能读取到对方写入的内容。这样在high buffer和low buffer之间复制内容的操作,在IOMMU机制中被称为“sync”或“bounce”。(重点)

读者可能会想,内存的复制,在内核中,不就是调用memcpy()函数来实现的吗?没错,这就是本文要介绍的IOMMU的软件实现方式——SWIOTLB。之所以说是软件实现,是因为sync操作在底层正是调用memcpy()函数,这完全是软件实现的。

四、SWIOTLB

SWIOTLB(software input/output table translation lookaside buffer)(软件IO地址转换缓冲区)

SWIOTLB的作用在于,使得寻址能力较低、无法直接寻址到内核所分配的DMA buffer的那些设备,也能够进行DMA操作

在目前主流的Linux操作系统中,SWIOTLB发挥作用的场合并不多见。这主要是由于以下原因:

现代的外部设备,通常都是32位或64位设备。64位设备毫无疑问可以直接寻址整个物理内存空间;而32位设备能够直接寻址的范围也达到了4G。如果操作系统运行内存不大于4G,则所有内存都可以被这些设备直接寻址到,此时设备的DMA操作,就无需SWIOTLB的辅助。
相比硬件IOMMU,SWIOTLB存在memcpy()操作,需要CPU的参与,降低了效率,这是软件实现的固有弊端。
后面的文章将会提到,如果启动参数中同时启用SWIOTLB和硬件IOMMU(即Intel IOMMU),那么当Linux系统启动完成后,SWIOTLB将会被禁用,而仅保留硬件IOMMU。

未完待续,持续更新

参考文章:

看完秒懂:Linux DMA mapping机制分析_dma map single-CSDN博客

Linux x86-64 IOMMU详解(一)——IOMMU简介_ioxumux-CSDN博客

http://www.dtcms.com/wzjs/201761.html

相关文章:

  • 最好记得网站域名企业如何进行网络推广
  • wordpress 增加导航栏百度推广优化中心
  • 做网站设计师要提供什么摘抄一小段新闻
  • 东莞石龙网站建设莞网站制作手机创建网站免费注册
  • 国外知名设计网站成人培训班有哪些课程
  • 知名品牌网站有哪些百度推广官方电话
  • 广州网站建设阿里云百度搜索推广的定义
  • 安徽建设工程信息网新网站哪儿登陆微信引流推广怎么做
  • 加强检察院门户网站建设百度指数的主要用户是
  • 网站上面的彩票快3怎么做上海seo服务
  • 网站建设书百度精准推广
  • 贵阳微网站站内营销推广方案
  • 阜阳建设部网站2021年度关键词有哪些
  • 太原网站优化方案百度推广一年多少钱
  • 专业做调查的网站网络营销推广外包平台
  • 深圳外贸建站网络推广公司百度搜索量查询
  • 企业宣传视频制作免费版网站内容seo
  • 做鲜花的网站有哪些站长工具站长
  • 暴雪战网怎么改国际服360优化大师安卓下载
  • 网站建设艾瑞市场分析软件网站关键词优化
  • 网站建设的频道是什么意思加强服务保障满足群众急需ruu7
  • 网站销售如何做业绩网站推广手段
  • vi设计模板源文件seovip培训
  • 软件网站怎么做的适合seo软件
  • 西宁公司网站建设建站是什么意思
  • 店铺销售系统软件哪个好南宁关键词优化公司
  • 网站建设ppt网络推广网站排名
  • 重庆找做墩子网站最近一周国内热点新闻
  • 企业logo设计软件网站推广和网站优化
  • 做哪些网站好注册网站免费注册