XP硬盘读写速度很慢的解决方法

时间:2023-12-12 15:03:44

05购入的电脑,今日仍在发挥余热,但系统速度慢得出奇。今日检测了硬盘读写速度还不到2m/s,实在令人难以接受。一查之下,硬盘被置为PIO模式了,难怪。

用以下方法得以解决:

1、对桌面“我的电脑”右键选择“属性”,选择“硬件”->“设备管理器”。

2、展开“IDE ATA/ATAPI 控制器”节点,双击“主要IDE控制器”。

3、点击“高级设置”,查看“设备0”的传输模式为“DMA(若可用)”,再下面“当前传输模式”居然是PIO。

说明系统因为收到过多的超时或循环冗余检验(CRC) 错误后,将硬盘传送模式从DMA降级为PIO了。

4、在“设备管理器”中直接卸载“主要IDE控制器”,重启计算机。

5、重启后XP自动重装硬盘驱动,然后再次要求重启。

重启完成后检查传输模式已经变为Ultra DMA Mode 5,测试读写速度恢复回27m/s。

说明:

  在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 系统突然变慢的原因。

接下来调整上面说的硬件超时时间:

6、 单击“开始”,单击“运行”,键入Regedit,然后单击“确定”。
7、 在注册表中找到并单击以下项:
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class{4D36E96A-E325-11CE-BFC1-08002BE10318}\中查找DriverDesc 值是包含字符串值“主要IDE 通道”的项目。
8、找到后在“编辑”菜单上,指向“新建”,然后单击“DWORD 值”,建立ResetErrorCountersOnSuccess项目,值填入数字 1,单击“确定”完成。
这三步的目的是使Windows向ATA 磁盘发出读取请求时的4 秒的超时值更改为10 秒。还实现了一种较不严格的变通策略以在发生超时错误和CRC 错误时降低传送模式(从较快的DMA 模式到较慢的DMA 模式,最终降为PIO 模式)。以前的情况是,在每当累积发生的超时错误或CRC 错误的总数达到6 次时,IDE/ATAPI 端口驱动程序(Atapi.sys) 将降低传送模式。当我们建立以上注册表键值实现新的策略后,Atapi.sys 仅在连续发生6 次超时错误或CRC 错误后才降低传送模式。这一新的策略实现后将大大降低系统降低或关闭DMA传送模式的机会。

最后加大磁盘缓存:

9、打开注册表编辑器。依次展开HKEY_LOCAL_MACHINE\SYSTEM\CURRENTCONTROLSET\CONTROL\SESSION MANAGER\MEMORY MANAGEMENT分支。

10、在右侧窗口中单击鼠标右键,选择“新建”、“DWORD”值,将新值命名为“Iopagelocklimit”,并将其值设置为“4000”(16进制,即16M或“8000”即32M),这样硬盘的读写频率会降低不少,如果内存足够大还可以试试10000 即64MB 。

现在放心享受系统吧。