QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 745|回复: 2

怎么知道硬盘的DMA有没有打开?那怎么把硬盘的DMA方式打开

[复制链接]
发表于 2004-6-8 22:27:50 | 显示全部楼层 |阅读模式
望各位大哥指点!
发表于 2004-6-8 22:40:32 | 显示全部楼层
linux中如何打开硬盘32们dma

 Linux下的32位I/O和DMA默认是关闭的,可是现在电脑的硬盘不会那么落伍吧!Linux好是好,但如果用的是16位I/O的话,电脑的性能就无法得到充分发挥,你心里一定会觉得很冤!没关系,跟我来吧。

  要打开32位I/O和DMA,需要以Root身份进行设置。为了降低因出错而重启系统对文件系统的损害,最好以单用户模式进行。可以先用下面的命令检查硬件驱动器的I/O情况。

  #hdparm -t /dev/hda

  屏幕显示如下:

  /dev/hda:

  Timing buffered disk reads:64MB in 30.93 seconds=2.07MB/sec

  如果要显示当前I/O、DMA配置,命令分别如下:

  #hdparm -c /dev/had (注:显示I/O配置命令)

  屏幕显示如下:

  /dev/hda:

  I/O support=0(16bit)

  # hdparm -d /dev/had (注:显示DMA配置命令)

  屏幕显示如下:

  /dev/hda:

  using_dma=0(off)

  在确定32位I/O和DMA是关闭的以后,用下面的命令将其打开:

  #hdparm -c 1 /dev/hda (注:打开32位I/O的命令)

  屏幕显示如下:

  /dev/hda:

  setting 32-bit I/O support flag to 1

  I/O support= 1 (default 16-bit)

  #hdparm -d 1 /dev/had (注:打开DMA的命令)

  屏幕显示如下:

  /dev/hda:

  setting using_dma to 0(on)

  hda:DMA inabled

  using_dma=1 (on)

  然后执行下面的命令以使配置生效:

  #hdparm -k 1 /dev/hda

  屏幕显示如下:

  /dev/hda:

  setting keep_settings to 1(on)

  keepsettings=1(on)

  然后,可以再用命令:hdparm -t /dev/hda 来看看效果:

  /dev/hda:

  Timing buffered disk reads:64MB in 14.53 seconds=4.40MB/sec

  怎么样,性能提高了一倍多!

  上面的方法,可以实现在一次开机中生效,而下一次开机又要重新设置。如果要实现每一次开机时都生效,应该在文件/etc/rc.d/rc.local的结尾加入以下命令:hdparm -c 1 -d 1 -k 1 /dev/hda,它可以使设置在每次重新启动系统时生效。
回复

使用道具 举报

发表于 2004-6-8 22:43:00 | 显示全部楼层
附加:
如果你的系统是rh9的话。不用了。它已经是32们dma了.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-16 20:26 , Processed in 0.062975 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表