科技行者

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

知识库

知识库 安全导航

至顶网软件频道在Linux操作系统下如何开启硬盘DMA(2)

在Linux操作系统下如何开启硬盘DMA(2)

  • 扫一扫
    分享文章到微信

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

Linux下的32位I/O和DMA默认是关闭的。如果用的是16位I/O的话,就无法充分发挥电脑的性能。如果要打开32位I/O和DMA,就需要以root身份进行设置

作者:song 来源:赛迪网 2007年9月5日

关键字: DMA 开启 操作系统 Linux

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

好啦!现在再查看一下驱动器的I/O情况:

[root@anima lwg]# /sbin/hdparm -t /dev/hda

/dev/hda:

Timing buffered disk reads: 116 MB in 3.03 seconds = 38.34 MB/sec

[root@anima lwg]#

可以看到,现在系统的I/O性能提高了很多。

但是,上面的设置只是对当前的系统有效,当再次重启系统时,又得重新设置了。

如果要使每次系统启动时都打开DMA,可以在/etc/rc.d/rc.local文件中添加上面的命令来实现:

[root@anima lwg]# echo "/sbin/hdparm -c 1 -d 1 -k 1 /dev/hda" >> /etc/rc.d/rc.local

[root@anima lwg]# 

hdparm命令帮助:

[root@anima lwg]# /sbin/hdparm --help

hdparm - get/set hard disk parameters - version v5.7

Usage: hdparm [options] [device] ..

Options:

-a get/set fs readahead

-A set drive read-lookahead flag (0/1)

-b get/set bus state (0 == off, 1 == on, 2 == tristate)

-B set Advanced Power Management setting (1-255)

-c get/set IDE 32-bit IO setting

-C check IDE power mode status

-d get/set using_dma flag

--direct use O_DIRECT to bypass page cache for timings

-D enable/disable drive defect management

-E set cd-rom drive speed

-f flush buffer cache for device on exit

-g display drive geometry

-h display terse usage information

-i display drive identification

-I detailed/current information directly from drive

--Istdin reads identify data from stdin as ASCII hex

--Istdout writes identify data to stdout as ASCII hex

-k get/set keep_settings_over_reset flag (0/1)

-K set drive keep_features_over_reset flag (0/1)

-L set drive doorlock (0/1) (removable harddisks only)

-M get/set acoustic management (0-254, 128: quiet, 254: fast) (EXPERIMENTAL)

-m get/set multiple sector count

-n get/set ignore-write-errors flag (0/1)

-p set PIO mode on IDE interface chipset (0,1,2,3,4,...)

-P set drive prefetch count

-q change next setting quietly

-Q get/set DMA tagged-queuing depth (if supported)

-r get/set device readonly flag (DANGEROUS to set)

-R register an IDE interface (DANGEROUS)

-S set standby (spindown) timeout

-t perform device read timings

-T perform cache read timings

-u get/set unmaskirq flag (0/1)

-U un-register an IDE interface (DANGEROUS)

-v defaults; same as -mcudkrag for IDE drives

-V display program version and exit immediately

-w perform device reset (DANGEROUS)

-W set drive write-caching flag (0/1) (DANGEROUS)

-x tristate device for hotswap (0/1) (DANGEROUS)

-X set IDE xfer mode (DANGEROUS)

-y put IDE drive in standby mode

-Y put IDE drive to sleep

-Z disable Seagate auto-powersaving mode

-z re-read partition table

[root@anima lwg]#

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

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

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