Scatter-gather DMA方式是与block DMA方式相对应的一种DMA方式。

在DMA传输数据的过程中,要求源物理地址和目标物理地址必须是连续的。但是在某些计算机体系中,如IA架构,连续的存储器地址在物理上不一定是连续的,所以DMA传输要分成多次完成。

如果在传输完一块物理上连续的数据后引起一次中断,然后再由主机进行下一块物理上连续的数据传输,那么这种方式就为block DMA方式。Scatter-gather DMA方式则不同,它使用一个链表描述物理上不连续的存储空间,然后把链表首地址告诉DMA master。DMA master在传输完一块物理连续的数据后,不用发起中断,而是根据链表来传输下一块物理上连续的数据,直到传输完毕后再发起一次中断。

很显然,scatter-gather DMA方式比block DMA方式效率高。

Scatter-gather DMA 与 block DMA相关推荐

  1. NIO - Scatter/Gather

    1.Scatter  从一个Channel读取的信息分散到N个缓冲区中(Buufer). 2.Gather  将N个Buffer里面内容按照顺序发送到一个Channel. Scatter/Gather ...

  2. RDMA技术详解(三):理解RDMA Scatter Gather List

    1. 前言 在使用RDMA操作之前,我们需要了解一些RDMA API中的一些需要的值.其中在ibv_send_wr我们需要一个sg_list的数组,sg_list是用来存放ibv_sge元素,那么什么 ...

  3. 【Java NIO的深入研究6】JAVA NIO之Scatter/Gather

    Java NIO开始支持scatter/gather,scatter/gather用于描述从Channel(译者注:Channel在中文经常翻译为通道)中读取或者写入到Channel的操作. 分散(s ...

  4. Java NIO系列教程(四) Scatter/Gather

    转载自   Java NIO系列教程(四) Scatter/Gather 译文地址  作者:Jakob Jenkov   译者:郭蕾 Java NIO开始支持scatter/gather,scatte ...

  5. java nio 系列教程 四_Java NIO系列教程(四) Scatter/Gather

    作者:Jakob Jenkov   译者:郭蕾 Java NIO开始支持scatter/gather,scatter/gather用于描述从Channel(译者注:Channel在中文经常翻译为通道) ...

  6. DMA(2) S3C2410 DMA详解(其它的其实类似)

    转载于:http://www.cnblogs.com/dubingsky/archive/2010/04/11/1709488.html 之所以要介绍S3C2410 DMA,因为它对性能太重要了!只有 ...

  7. JavaNIO - Scatter Gather

    Scatter & Gather指在多个缓冲区上实现一个简单的 I/O 操作.减少或避免了Buffer间的拷贝和系统调用. Channel Write操作 Write操作 Channel Re ...

  8. 宋宝华: 关于DMA ZONE和dma alloc coherent若干误解的彻底澄清

    原创 宋宝华 Linux阅码场 2018-01-22 作者简介 宋宝华,他有10几年的Linux开发经验.他长期在大型企业担任一线工程师和系统架构师,编写大量的Linux代码,并负责在gerrit上r ...

  9. GD32F303调试小记(一)之USART(接收中断、接收空闲中断+DMA、发送DMA)

    前言 之前写了GD32F103调试小记(二)之USART(接收中断.接收空闲中断+DMA.发送DMA)一文.这次我们来看看GD32F303的USART是如何配置的,结合这两篇文章,相信大家GD32的U ...

  10. linux zynq ps dma,Zynq PS DMA控制器应用笔记

    Zynq-7000系列器件PS端的DMA控制器采用ARM的IP核DMA-330(PL-330)实现.有关DMA控制器的硬件细节及相关指令集.编程实例内容参考ARM官方文档: DDI0424D:dma3 ...

最新文章

  1. 我成功攻击了Tomcat服务器,大佬们的反应亮了
  2. python就业前景分析-Python就业前景如何?老男孩Python培训好吗?
  3. 神经网络与机器学习 笔记—时序模式、非线性滤波
  4. STM32工作笔记0073---UCOSIII任务管理(上)
  5. 前端必须懂的计算机网络知识—(XSS、CSRF和HTTPS)
  6. 使软件可二次开发_九思软件:平台型OA系统为何要好于项目型OA系统?
  7. 一看就懂ReactJS
  8. HDU 3729 I#39;m Telling the Truth(二部图最大匹配+结果输出)
  9. python删除数据框中的字符串列_如何根据条件删除pandas数据框中的列?
  10. 【AD封装】贴片插件晶振(带3D)
  11. android7.0 root教程,小米4S(全网通 安卓7.0)一键ROOT详解教程,看教程ROOT
  12. 服务器固态硬盘raid没了,HP服务器磁盘阵列坏了怎么办,数据如何恢复?
  13. 电信增值短信平台软件模块清单(sp专用)
  14. 第十一周学习周报(20180514-20180520)
  15. CSS真好玩——用纯CSS画一轮新月
  16. 基于SSM二手交易平台
  17. 英语文章关于计算机的,关于计算机的英语范文5篇
  18. android高德地图自定义图层,自定义图层-图层-教程-地图 JS API | 高德地图API
  19. 豆豆亮亮三岁生日快乐!
  20. (转)【译】优化你的手机游戏(没有延迟的,才是健康的)

热门文章

  1. 【代码优化】equals深入理解
  2. linux系统剪切,Linux 系统裁剪
  3. java生成有理数_JAVA程序设计-有理数类的设计
  4. 电脑网络禁用了怎么恢复_Tenorshare UltData for Mac(iOS数据恢复备份软件)v9.4.1中文激活版_软件动态论坛...
  5. mac vscode 背景半透明_武装Mac|常用MacBook软件分类汇总
  6. python整体设计目标怎么写_设计模式及Python实现
  7. github issue 搜索_启用 GitHub Issue 作为博客留言系统 - Farseerfc的小窝
  8. GSON的用法(处理对象和JSON的相互转化)
  9. 软件技术方案_广东省汕尾市海丰陈氏数字化网络化全县族谱统修工作方案(草案)...
  10. android同一个activity中传递参数,Android中Activity之间跳转和参数传递的实例