我們都知道,使用DMA方式傳輸數據可以占用更少的CPU資源,因此與其它操作系統一樣,Linux支持硬盤以DMA方式轉輸數據,但在安裝Red Hat7.0時關於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支持,它也會罷工的。