收藏 分享(赏)

如何防止Windows自行关闭硬盘DMA模式.doc

上传人:jinchen 文档编号:6211731 上传时间:2019-04-02 格式:DOC 页数:2 大小:36.50KB
下载 相关 举报
如何防止Windows自行关闭硬盘DMA模式.doc_第1页
第1页 / 共2页
如何防止Windows自行关闭硬盘DMA模式.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、如何防止 Windows 自行关闭硬盘 DMA 模式硬盘的 DMA 模式大家应该都知道吧,硬盘的 PATA 模式有 DMA33、DMA66 、DMA100 和 DMA133,最新的 SATA-150 都出来了!一般来说现在大多数人用的还是 PATA 模式的硬盘,硬盘使用 DMA 模式相比以前的PIO 模式传输的速度要快 28 倍。 DMA 模式的起用对系统的性能起到了实质的作用。以前有很多文章介绍过如何打开 DMA 模式,我在这里也就不多说了。但笔者发现一个新的“问题”Windows 2000、XP、2003 系统有时会自行关闭硬盘的 DMA 模式,自动改用 PIO 模式运行!这就造成在使用以

2、上系统中硬盘性能突然下降,其中最明显的现象有:系统起动速度明显变慢,一般来说正常 Windows XP 系统启动时那个由左向右运动的滑条最多走 24 次系统就能启动,但这一问题发生时可能会走 58 次或更多!而且在运行系统时进行硬盘操作时明显感觉变慢,在运行一些大的软件时CPU 占用率时常达到 100%而产生停顿,玩一些大型 3D 游戏时(比如极品飞车 6)画面时有明显停顿(很多人这时以为是自己的显卡问题,当然如果你使用的是三年前的显卡玩这些游戏是有点老了,但如果你用的是今年才买的 GF 显卡那就不是它的问题了) ,出现以上问题时大家最好看看自己硬盘的 DMA 模式是不是被Windows 系统

3、自行关闭了。查看自己的系统是否打开 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”又没有改动,而现在

4、是“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 模式)

5、。 问题就在这里!一般来说一个正常的硬盘很少会有超时或循环冗余检验 (CRC) 错误,但是当我们使用这些系统里的挂起(也有叫休眠)并恢复计算机后就很容易造成超时或循环冗余检验 (CRC) 错误。因为系统设定的超时值为 4 秒,当系统向 ATA 磁盘发出读取请求时如果硬盘回应时间超过 4 秒的超时值时才会产生超时或循环冗余检验 (CRC) 错误,但因为系统在挂起(也有叫休眠)时硬盘是在停转状态中,恢复计算机时硬盘有个从停止到运动的过程,这就很容易造成大部分硬盘回应时间超过 4 秒的超时值。也就是说当我们使用计算机挂起 6 次后系统就会把通信速度(传送模式)从最快的直接内存访问 (DMA) 模式分

6、步骤降为较慢的 DMA 模式。如果挂起 6 次以上则驱动程序最终将把传送模式降为最慢的模式(PIO 模式) 。这就是 Windows 系统突然变慢的原因。解决问题:若要为受影响的设备重新启用典型 DMA 或更快 DMA 的传送模式,请执行以下操作:1. 双击“管理工具” ,然后双击“计算机管理”;2. 单击“系统工具” ,然后单击“设备管理器”;3. 展开“IDE ATA/ATAPI 控制器”节点;4. 双击您要为其恢复典型 DMA 传送模式的控制器;5. 单击“驱动程序” 选项卡;6. 单击“卸载”。当此过程完成后,重新启动您的计算机。当 Windows 重新启动后,将重新枚举硬盘控制器,同

7、时与该控制器相连的每个设备的传送模式将重置为默认值。但这样只是把硬盘设备的传送模式重置为默认值,当我们再使用挂起系统时系统又会自行关闭 DMA 模式!所以我们还要做以下操作:1. 单击“开始”,单击 “运行”,键入 Regedit,然后单击“确定”。2. 在注册表中找到并单击以下项:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass4D36E96A-E325-11CE-BFC1-08002BE103180001 和HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass4D36E96A-E

8、325-11CE-BFC1-08002BE103180002 3. 在“编辑”菜单上,指向 “新建”,然后单击“DWORD 值”。4. 键入 ResetErrorCountersOnSuccess,然后按 Enter 键。5. 在“编辑”菜单上,单击 “修改”。6. 键入 l,然后单击 “确定” 。7. 按照下列步骤操作,然后退出注册表编辑器:注意:上面注册表最后的项“4D36E96A-E325-11CE-BFC1-08002BE10318”列出的带有“0001”编号的子项对应于一台仅有一个 IDE 控制器的计算机的主要 IDE 通道和次要 IDE 通道。如果您的计算机有两个 IDE 控制器,

9、则对于每个控制器,主要 IDE 通道和次要 IDE 通道的带有编号的子项分别是:“0001、0002 、0003、0004、0005、0006”。为检查是否找到了正确的子项,请检查子项的 DriverDesc 值是包含字符串值 “主要 IDE 通道”,还是包含字符串值“ 次要 IDE 通道”。建立以上注册表键值的目的是:在 Windows 中,使系统向 ATA 磁盘发出读取请求时的 4 秒的超时值更改为 10 秒。还实现了一种较不严格的变通策略以在发生超时错误和 CRC 错误时降低传送模式(从较快的 DMA 模式到较慢的 DMA 模式,最终降为 PIO 模式) 。以前的情况是,在每当累积发生的

10、超时错误或 CRC 错误的总数达到 6 次时,IDE/ATAPI 端口驱动程序 (Atapi.sys) 将降低传送模式。当我们建立以上注册表键值实现新的策略后,Atapi.sys 仅在连续发生 6 次超时错误或 CRC 错误后才降低传送模式。这一新的策略实现后将大大降低系统降低或关闭 DMA 传送模式的机会。现在我们可以安心地使用挂起系统和高性能的 DMA 硬盘模式,再也不会发生系统性能突然下降的情况了。最后有几点提醒大家特别特别注意:1.如果安装虚拟光驱,那么很有可能导致卸载 IDE 驱动程序后无法再次正确安装!2.如果使用 SA 转接卡,则很有可能因为硬件兼容性的原因导致无法开启 DMA!

11、3.如果数据源所在设备传输速度慢、或者所在硬盘没有打开 DMA,也会造成刻录速度慢而不稳定、连续缓存欠载的假相!另外,网友 morningsun 也提出了一些经验之谈,在此一并贴上。*若 Intel ICH2/3/4,在 XP 下装了 IAA 后,有可能会出现 IAA 中显示 DMA 打开,但是 Nero InfoTools 中显示没有打开,原因是 IAA 的问题,卸载即可关于 IAA,是 Intel 开发出的在 98 下打开 DMA 的工具,自 ICH5 后就不再提供对 98 的支持。IAA 自然不再更新,但是 ICH2/3/4 仍然可以在 XP 下安装 IAA,但由此引起的问题多多VIA 的 Miniport,NV SW 也是一样,不过相对好些

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 网络科技 > windows相关

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报