UbuntuHelp:DMA/zh
来自Ubuntu中文
![]() |
点击翻译: |
English • 中文 |
介绍
如果你感觉你的 DVD 播放时有跳跃现象,或者拷贝音乐 CD 非常慢,或者在访问光驱时系统变慢,这可能是由于你没有启用 DMA,或者叫“内存直接访问(Direct Memory Access)”。DMA 能让硬盘或光驱等设备直接访问系统内存。Ubuntu 6.06 (Dapper Drake) 能够识别支持 DMA 的设备并自动启用 DMA。
警告:启用 DMA 在某些情况下是有风险的,这通常跟硬件故障或使用了系统不支持的设置有关。不当的使用 hdparm 命令可能导致主要数据的破坏和/或丢失!近 4 年内的系统大都支持 DMA。
启用 DMA
To enable DMA, you need to use the hdparm
command and the configuration file hdparm.conf
. These instructions assume that you are trying to enable DMA on `hdc`, usually the CD-rom drive.
- See the what the settings are on `/dev/hdc`
sudo hdparm /dev/hdc
- If you get a line like
using_dma = 1 (on)
, DMA is already enabled. Skip to step 4 to see if it has been enabled at boot time. - Enable DMA on `/dev/hdc`
sudo hdparm -d1 /dev/hdc
- You have now enabled DMA for the drive. However, in order for the settings to be automatically applied at boot there you need to edit the
/etc/hdparm.conf
script. To do this use this command:gksudo gedit /etc/hdparm.conf
Add the following to the end of your hdparm.conf
/dev/hdc { dma = on }
(another way of avoiding editing of the hdparm.conf file is to simply run sudo hdparm -d1 -k1 /dev/hdc
to keep the DMA flag).
常见问题
If your drives are configured in [Cable Select] mode and while running `hdparm` commands you receive errors related to timeouts or drive not ready, try changing the drive to be a master or slave device depending on your system configuration. This does require opening the case and as far as I know most drives are set to Cable Select from the manufacturer. Sometimes step 3 above can fail with an "Operation Not Permitted" message. You can fix this by editing the file /etc/modules: For an Intel CPU put the lines
piix ide-core
above the line ide-cd
For an AMD CPU put the line amd74xx
above ide-cd
For a VIA Chipset put via82cxxx
above ide-cd
Then reboot and try steps 3-4 again....
Further reading
The hdparm has further options that may be more risky. They can be seen using the man hdparm
command in the terminal. For a detailed description of DMA visit the IEEE http://standards.ieee.org/reading/ieee/std_public/description/busarch/1212.1-1993_desc.html IDE, EIDE and UDMA http://www.spcug.org/reviews/bl0108.htm