萬盛學電腦網

 萬盛學電腦網 >> 硬盤故障 >> 解決系統運行時出現延遲和停頓的問題

解決系統運行時出現延遲和停頓的問題

首先說一下我的問題:

  每次重裝系統後一開始都是好好的,沒有任何的延遲和鼠標運行時的停頓。但是就是在10來天之後系統運行的時候就開始出現延遲現象,鼠標也開始出現一頓一頓的停頓。而且系統的啟動速度也比以前慢了一倍!相同的問題現在已經出現三次了(重裝系統兩(電腦沒聲音)次)。實在郁悶的很。。。

  我的系統是網上所謂的IBM OEM XP,已經更新了所有能更新的東西。機器的配置見簽名,硬件的驅動都已經升級到最新版。文件碎片也整理過了。殺毒軟件用的是卡巴,一開始以為是卡巴的問題,結果卸載之後問題依舊。能優化的地方基本上都優化過了。

  補充一下,出現延遲和停頓的現象時,切換輸入法的時候也狂慢。病毒應該沒有的,卡巴一直都在升級查毒中,木馬也查過了。

  在百思不得其解中我在52hardware.com論壇上發了一個求助貼,結果7樓的那個朋友一句話提醒了我,可能是硬盤的問題!馬上我就重啟了一下系統,然後在沒有運行任何程序的前提下用HD Tune測試了一下我的硬盤,結果是恐怖的。。。大家可以看下圖:

點擊浏覽下一頁


  為什麼我的硬盤會出現這種問題呢想來想去就只有一個可能,那就是硬盤的傳輸模式不對!

  馬上打開我的電腦進入到設備管理器中檢查,果不其然。。。主要IDE通道的當前傳輸模式已經被改成PIO模式了。大家可以看下圖:

點擊浏覽下一頁


  二話不說,馬上卸載了主要IDE通道的驅動程序,然後重啟。。。系統自動再此重啟。。。

  再次進入我的電腦進入到設備管理器中檢查,主要IDE通道的當前傳輸模式已經被改為Ultra DMA Mode 5。大家可以看下圖:

點擊浏覽下一頁


  再次開啟HD Tune測試了一下我的硬盤,這次的結果還算令人滿意。。。大家可以看下圖:

點擊浏覽下一頁


  至此,我想我已經找到問題所在了,那就是XP的系統自動關閉了我的硬盤DMA傳輸模式!那為什麼XP會關閉我的硬盤DMA傳輸模式呢請看下面的介紹。

問題的介紹:

  硬盤的DMA模式大家應該都知道吧,硬盤的PATA模式有DMA33、DMA66、DMA100和DMA133,最新的SATA-150都出來了!一般來說現在大多數人用的還是PATA模式的硬盤,硬盤使用DMA模式相比以前的PIO模式傳輸的速度要快2~8倍。DMA模式的起用對系統的性能起到了實質的作用。

  但我發現一個“問題”,那就是XP系統有時會自行關閉硬盤的DMA模式,自動改用PIO模式運行!這就造成在使用以上系統中硬盤性能突然下降,其中最明顯的現象有:系統起動速度明顯變慢,一般來說正常Windows XP系統啟動時那個由左向右運動的滑條最多走2~4次系統就能啟動,但這一問題發生時可能會走5~8次或更多!而且在運行系統時進行硬盤操作時明顯感覺變慢,在運行一些大的軟件時CPU占用率時常達到100%而產生停頓,玩一些大型3D游戲時(比如極品飛車6)畫面時有明顯停頓(很多人這時以為是自己的顯卡問題,當然如果你使用的是三年前的顯卡玩這些游戲是有點老了,但如果你用的是今年才買的顯卡那就不是它的問題了),出現以上問題時大家最好看看自己硬盤的DMA模式是不是被Windows 系統自行關閉了。查看自己的系統是否打開DMA模式:

  1. 雙擊“管理工具”,然後雙擊“計算機管理”;
  2. 單擊“系統工具”,然後單擊“設備管理器”;
  3. 展開“IDE ATA/ATAPI 控制器”節點;
  4. 雙擊您的“主要IDE控制器”;
  5. 點擊“高級設置”。
  看到“設備0”,下面的傳輸模式應設為“DMA(若可用)”,再下面“當前傳輸模式”,如果是“Ultra DMA Mode *(*為數字,DMA33為2,DMA66為4,DMA100為5、DMA133為6)”,那麼你的系統正常,但如果以前你自己設的是“Ultra DMA Mode 6”又沒有改動,而現在是“Ultra DMA Mode 4”或“Ultra DMA Mode 2”更或者是“PIO 模式”而且改不過來!可能就是系統自行關閉了DMA模式了。
 
  分析問題:

  好了,先來說說問題是如何產生的。在Windows 2000/XP/2003中有這樣一個設定: Windows IDE/ATAPI 端口驅動程序 (Atapi.sys) 累積收到總共6個超時或循環冗余檢驗 (CRC) 錯誤後,驅動程序將把通信速度(傳送模式)從最快的直接內存訪問 (DMA) 模式分步驟降為較慢的 DMA 模式。如果驅動程序繼續收到超時或 CRC 錯誤,則驅動程序最終將把傳送模式降為最慢的模式(PIO 模式)。 問題就在這裡(電腦自動關機)!一般來說一個正常的硬盤很少會有超時或循環冗余檢驗 (CRC) 錯誤,但是當我們使用這些系統裡(電腦自動關機)的掛起(也有叫休眠)並恢復計算機後就很容易造成超時或循環冗余檢驗 (CRC) 錯誤。因為系統設定的超時值為4秒,當系統向 ATA 磁盤發出讀取請求時如果硬盤回應時間超過 4 秒的超時值時才會產生超時或循環冗余檢驗 (CRC) 錯誤,但因為系統在掛起(也有叫休眠)時硬盤是在停轉狀態中,恢復計算機時硬盤有個從停止到運動的過程,這就很容易造成大部分硬盤回應時間超過 4 秒的超時值。也就是說當我們使用計算機掛起6次後系統就會把通信速度(傳送模式)從最快的直接內存訪問 (DMA) 模式分步驟降為較慢的 DMA 模式。如果掛起6次以上則驅動程序最終將把傳送模式降為最慢的模式(PIO 模式)。這就是Windows 系統突然變慢的原因。

  解決問題:

  若要為受影響的設備重新啟用典型DMA或更快DMA的傳送模式,請執行以下操作:
  1. 雙擊“管理工具”,然後雙擊“計算機管理”;
  2. 單擊“系統工具”,然後單擊“設備管理器”;
  3. 展開“IDE ATA/ATAPI 控制器”節點;
  4. 雙擊您要為其恢復典型 DMA 傳送模式的控制器;
  5. 單擊“驅動程序”選項卡;
  6. 單擊“卸載”。
  當此過程完成後,重新啟動您的計算機。當 Windows 重新啟動後,將重新枚舉硬盤控制器,同時與該控制器相連的每個設備的傳送模式將重置為默認值。
   但這樣只是把硬盤設備的傳送模式重置為默認值,當我們再使用掛起系統時系統又會自行關閉DMA模式!所以我們還要做以下操作:
  1. 單擊“開始”,單擊“運行”,鍵入 Regedit,然後單擊“確定”。
  2. 在注冊表中找到並單擊以下項:
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\0001
  和
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\0002
  3. 在“編輯”菜單上,指向“新建”,然後單擊“DWORD 值”。
  4. 鍵入 ResetErrorCountersOnSuccess,然後按 Enter 鍵。
  5. 在“編輯”菜單上,單擊“修改”。
  6. 鍵入 l,然後單擊“確定”。
  7. 按照下列步驟操作,然後退出注冊表編輯器:
  注意:上面注冊表最後的項“{4D36E96A-E325-11CE-BFC1-08002BE10318}”列出的帶有“0001”編號的子項對應於一台僅有一個 IDE 控制器的計算機的主要 IDE 通道和次要 IDE 通道。如果您的計算機有兩(電腦沒聲音)個 IDE 控制器,則對於每個控制器,主要 IDE 通道和次要 IDE 通道的帶有編號的子項分別是:“0001、0002、0003、0004、0005、0006……”。
  為檢查是否找到了正確的子項,請檢查子項的 DriverDesc 值是包含字符串值“主要 IDE 通道”,還是包含字符串值“次要 IDE 通道”。 

  建立以上注冊表鍵值的目的是:

  在Windows中,使系統向 ATA 磁盤發出讀取請求時的 4 秒的超時值更改為 10 秒。還實現了一種較不嚴格的變通策略以在發生超時錯誤和 CRC 錯誤時降低傳送模式(從較快的 DMA 模式到較慢的 DMA 模式,最終降為 PIO 模式)。以前的情況是,在每當累積發生的超時錯誤或 CRC 錯誤的總數達到 6 次時,IDE/ATAPI 端口驅動程序 (Atapi.sys) 將降低傳送模式。當我們建立以上注冊表鍵值實現新的策略後,Atapi.sys 僅在連續發生 6 次超時錯誤或 CRC 錯誤後才降低傳送模式。

  這一新的策略實現後將大大降低系統降低或關閉DMA傳送模式的機會。現在我們可以安心地使用掛起系統和高性能的DMA硬盤模式,再也不會發生系統性能突
copyright © 萬盛學電腦網 all rights reserved