科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道如何在Linux下用DMA的方式进行数据传输

如何在Linux下用DMA的方式进行数据传输

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

我们都知道,使用DMA方式传输数据可以占用更少的CPU资源,因此与其它操作系统一样,Linux支持硬盘以DMA方式转输数据,但在安装Red Hat时关于DMA的默认选项是Disable的,当然你可以在安装时就enable它。

作者:赛迪网技术社区 来源:赛迪网技术社区 2007年10月11日

关键字: 传输 数据 DMA Linux

  • 评论
  • 分享微博
  • 分享邮件
 

我们都知道,使用DMA方式传输数据可以占用更少的CPU资源,因此与其它操作系统一样,Linux支持硬盘以DMA方式转输数据,但在安装Red Hat时关于DMA的默认选项是Disable的,当然你可以在安装时就enable它。如果在安装时DMA是disable的,那该怎么才能激活DMA呢?通过重新编译内核可以激活DMA支持,但编译内核对新手显然太过复杂。下面的方法无需编译内核,就可以激活DMA支持。

  一、检查系统中的DMA选项是否已被激活

  在进行操作前,先确认硬盘是否已经在使用DMA方式传输数据了。方法:查看/proc/ide/hda/settings文件,其中有一行的内容为:using_dma,如果其后面的值被设置为1就说明系统已经支持DMA了,那么下面的操作就可以免了,当然如果你要关闭DMA功能的话,还要往下看看哟:)。

  Linux中的hdparm命令是用来进行与硬盘相关操作的,用hdparm -i /dev/hda可以列出IDE可能支持的DMA模式,如:


DMA modes: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 *udma4

  二、激活DMA支持

  方法1:在lilo.conf中加入:idex=dma,其中x代表硬盘序号,其取值范围0-3,分别代表系统中的四个IDE硬盘设备。

  方法2:使用hdparm命令,hdparm d1 /dev/hda 其中d1表示使能DMA,你可以将其加到rc.locl中以便每次启动时都硬盘都能使用DMA方式传输数据。

  三、关闭DMA支持

  命令格式:hdparm d0 /dev/hda 关闭DMA传输方式,实在想不出有什么理由要这样做。

  对支持UDMA传输方式的硬盘,也可以参照以上的方法进行设置,但要确保硬盘控制器及硬盘都支持UDMA,最后你还要有一根支持UDMA传输方式的硬盘连线,否则即使你激活了UDMA支持,它也会罢工的。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章