兴宁A8 兴宁论坛 兴宁新闻 兴宁人的网络社区

标题: 解决系统运行时出现延迟和停顿的问题 [打印本页]

作者: computer    时间: 2012/3/26 20:31
标题: 解决系统运行时出现延迟和停顿的问题
首先说一下我的问题:<BR><BR>  每次重装系统后一开始都是好好的,没有任何的延迟和鼠标运行时的停顿。但是就是在10来天之后系统运行的时候就开始出现延迟现象,鼠标也开始出现一顿一顿的停顿。而且系统的启动速度也比以前慢了一倍!相同的问题现在已经出现三次了(重装系统两次)。实在郁闷的很。。。<BR><BR>  我的系统是网上所谓的IBM&nbsp;OEM&nbsp;XP,已经更新了所有能更新的东西。机器的配置见签名,硬件的驱动都已经升级到最新版。文件碎片也整理过了。杀毒软件用的是卡巴,一开始以为是卡巴的问题,结果卸载之后问题依旧。能优化的地方基本上都优化过了。<BR><BR>  补充一下,出现延迟和停顿的现象时,切换输入法的时候也狂慢。病毒应该没有的,卡巴一直都在升级查毒中,木马也查过了。<BR><BR>  在百思不得其解中我在52hardware.com论坛上发了一个求助贴,结果7楼的那个朋友一句话提醒了我,可能是硬盘的问题!马上我就重启了一下系统,然后在没有运行任何程序的前提下用HD&nbsp;Tune测试了一下我的硬盘,结果是恐怖的。。。大家可以看下图:<BR>
<P align=center></IMG></P><BR>  为什么我的硬盘会出现这种问题呢?想来想去就只有一个可能,那就是硬盘的传输模式不对!<BR><BR>  马上打开我的电脑进入到设备管理器中检查,果不其然。。。主要IDE通道的当前传输模式已经被改成PIO模式了。大家可以看下图:<BR>
<P align=center></IMG></P><BR>  二话不说,马上卸载了主要IDE通道的驱动程序,然后重启。。。系统自动再此重启。。。<BR><BR>  再次进入我的电脑进入到设备管理器中检查,主要IDE通道的当前传输模式已经被改为Ultra&nbsp;DMA&nbsp;Mode&nbsp;5。大家可以看下图:<BR>
<P align=center></IMG></P><BR>  再次开启HD&nbsp;Tune测试了一下我的硬盘,这次的结果还算令人满意。。。大家可以看下图:<BR>
<P align=center></IMG></P><BR>  至此,我想我已经找到问题所在了,那就是XP的系统自动关闭了我的硬盘DMA传输模式!那为什么XP会关闭我的硬盘DMA传输模式呢?请看下面的介绍。<BR><BR>问题的介绍:<BR><BR>  硬盘的DMA模式大家应该都知道吧,硬盘的PATA模式有DMA33、DMA66、DMA100和DMA133,最新的SATA-150都出来了!一般来说现在大多数人用的还是PATA模式的硬盘,硬盘使用DMA模式相比以前的PIO模式传输的速度要快2~8倍。DMA模式的起用对系统的性能起到了实质的作用。<BR><BR>  但我发现一个“问题”,那就是XP系统有时会自行关闭硬盘的DMA模式,自动改用PIO模式运行!这就造成在使用以上系统中硬盘性能突然下降,其中最明显的现象有:系统起动速度明显变慢,一般来说正常Windows&nbsp;XP系统启动时那个由左向右运动的滑条最多走2~4次系统就能启动,但这一问题发生时可能会走5~8次或更多!而且在运行系统时进行硬盘操作时明显感觉变慢,在运行一些大的软件时CPU占用率时常达到100%而产生停顿,玩一些大型3D游戏时(比如极品飞车6)画面时有明显停顿(很多人这时以为是自己的显卡问题,当然如果你使用的是三年前的显卡玩这些游戏是有点老了,但如果你用的是今年才买的显卡那就不是它的问题了),出现以上问题时大家最好看看自己硬盘的DMA模式是不是被Windows&nbsp;系统自行关闭了。查看自己的系统是否打开DMA模式:<BR><BR>  1.&nbsp;双击“管理工具”,然后双击“计算机管理”;<BR>  2.&nbsp;单击“系统工具”,然后单击“设备管理器”;<BR>  3.&nbsp;展开“IDE&nbsp;ATA/ATAPI&nbsp;控制器”节点;<BR>  4.&nbsp;双击您的“主要IDE控制器”;<BR>  5.&nbsp;点击“高级设置”。<BR>  看到“设备0”,下面的传输模式应设为“DMA(若可用)”,再下面“当前传输模式”,如果是“Ultra&nbsp;DMA&nbsp;Mode&nbsp;*(*为数字,DMA33为2,DMA66为4,DMA100为5、DMA133为6)”,那么你的系统正常,但如果以前你自己设的是“Ultra&nbsp;DMA&nbsp;Mode&nbsp;6”又没有改动,而现在是“Ultra&nbsp;DMA&nbsp;Mode&nbsp;4”或“Ultra&nbsp;DMA&nbsp;Mode&nbsp;2”更或者是“PIO&nbsp;模式”而且改不过来!可能就是系统自行关闭了DMA模式了。<BR> <BR>  分析问题:<BR><BR>  好了,先来说说问题是如何产生的。在Windows&nbsp;2000/XP/2003中有这样一个设定:&nbsp;Windows&nbsp;IDE/ATAPI&nbsp;端口驱动程序&nbsp;(Atapi.sys)&nbsp;累积收到总共6个超时或循环冗余检验&nbsp;(CRC)&nbsp;错误后,驱动程序将把通信速度(传送模式)从最快的直接内存访问&nbsp;(DMA)&nbsp;模式分步骤降为较慢的&nbsp;DMA&nbsp;模式。如果驱动程序继续收到超时或&nbsp;CRC&nbsp;错误,则驱动程序最终将把传送模式降为最慢的模式(PIO&nbsp;模式)。&nbsp;问题就在这里!一般来说一个正常的硬盘很少会有超时或循环冗余检验&nbsp;(CRC)&nbsp;错误,但是当我们使用这些系统里的挂起(也有叫休眠)并恢复计算机后就很容易造成超时或循环冗余检验&nbsp;(CRC)&nbsp;错误。因为系统设定的超时值为4秒,当系统向&nbsp;ATA&nbsp;磁盘发出读取请求时如果硬盘回应时间超过&nbsp;4&nbsp;秒的超时值时才会产生超时或循环冗余检验&nbsp;(CRC)&nbsp;错误,但因为系统在挂起(也有叫休眠)时硬盘是在停转状态中,恢复计算机时硬盘有个从停止到运动的过程,这就很容易造成大部分硬盘回应时间超过&nbsp;4&nbsp;秒的超时值。也就是说当我们使用计算机挂起6次后系统就会把通信速度(传送模式)从最快的直接内存访问&nbsp;(DMA)&nbsp;模式分步骤降为较慢的&nbsp;DMA&nbsp;模式。如果挂起6次以上则驱动程序最终将把传送模式降为最慢的模式(PIO&nbsp;模式)。这就是Windows&nbsp;系统突然变慢的原因。<BR><BR>  解决问题:<BR><BR>  若要为受影响的设备重新启用典型DMA或更快DMA的传送模式,请执行以下操作:<BR>  1.&nbsp;双击“管理工具”,然后双击“计算机管理”;<BR>  2.&nbsp;单击“系统工具”,然后单击“设备管理器”;<BR>  3.&nbsp;展开“IDE&nbsp;ATA/ATAPI&nbsp;控制器”节点;<BR>  4.&nbsp;双击您要为其恢复典型&nbsp;DMA&nbsp;传送模式的控制器;<BR>  5.&nbsp;单击“驱动程序”选项卡;<BR>  6.&nbsp;单击“卸载”。<BR>  当此过程完成后,重新启动您的计算机。当&nbsp;Windows&nbsp;重新启动后,将重新枚举硬盘控制器,同时与该控制器相连的每个设备的传送模式将重置为默认值。<BR>  &nbsp;但这样只是把硬盘设备的传送模式重置为默认值,当我们再使用挂起系统时系统又会自行关闭DMA模式!所以我们还要做以下操作:<BR>  1.&nbsp;单击“开始”,单击“运行”,键入&nbsp;Regedit,然后单击“确定”。<BR>  2.&nbsp;在注册表中找到并单击以下项:<BR>  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\0001<BR>  和<BR>  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\0002<BR>  3.&nbsp;在“编辑”菜单上,指向“新建”,然后单击“DWORD&nbsp;值”。<BR>  4.&nbsp;键入&nbsp;ResetErrorCountersOnSuccess,然后按&nbsp;Enter&nbsp;键。<BR>  5.&nbsp;在“编辑”菜单上,单击“修改”。<BR>  6.&nbsp;键入&nbsp;l,然后单击“确定”。<BR>  7.&nbsp;按照下列步骤操作,然后退出注册表编辑器:<BR>  注意:上面注册表最后的项“{4D36E96A-E325-11CE-BFC1-08002BE10318}”列出的带有“0001”编号的子项对应于一台仅有一个&nbsp;IDE&nbsp;控制器的计算机的主要&nbsp;IDE&nbsp;通道和次要&nbsp;IDE&nbsp;通道。如果您的计算机有两个&nbsp;IDE&nbsp;控制器,则对于每个控制器,主要&nbsp;IDE&nbsp;通道和次要&nbsp;IDE&nbsp;通道的带有编号的子项分别是:“0001、0002、0003、0004、0005、0006……”。<BR>  为检查是否找到了正确的子项,请检查子项的&nbsp;DriverDesc&nbsp;值是包含字符串值“主要&nbsp;IDE&nbsp;通道”,还是包含字符串值“次要&nbsp;IDE&nbsp;通道”。&nbsp;<BR><BR>  建立以上注册表键值的目的是:<BR><BR>  在Windows中,使系统向&nbsp;ATA&nbsp;磁盘发出读取请求时的&nbsp;4&nbsp;秒的超时值更改为&nbsp;10&nbsp;秒。还实现了一种较不严格的变通策略以在发生超时错误和&nbsp;CRC&nbsp;错误时降低传送模式(从较快的&nbsp;DMA&nbsp;模式到较慢的&nbsp;DMA&nbsp;模式,最终降为&nbsp;PIO&nbsp;模式)。以前的情况是,在每当累积发生的超时错误或&nbsp;CRC&nbsp;错误的总数达到&nbsp;6&nbsp;次时,IDE/ATAPI&nbsp;端口驱动程序&nbsp;(Atapi.sys)&nbsp;将降低传送模式。当我们建立以上注册表键值实现新的策略后,Atapi.sys&nbsp;仅在连续发生&nbsp;6&nbsp;次超时错误或&nbsp;CRC&nbsp;错误后才降低传送模式。<BR><BR>  这一新的策略实现后将大大降低系统降低或关闭DMA传送模式的机会。现在我们可以安心地使用挂起系统和高性能的DMA硬盘模式,再也不会发生系统性能突然下降的情况了。<BR><BR>  系统运行时出现延迟和停顿现象可能有很多方面的原因,硬件的问题,软件的问题,使用者的问题。。。<BR><BR>  在此我只是列出了一个有关硬盘方面的问题。大家在平时的操作中如果出现系统运行时出现延迟和停顿现象,也请多多检查一下。胆大心细,勤学好问,没有什么问题不能解决的。最后希望大家都能拥有以个稳定、高速的操作系统。




欢迎光临 兴宁A8 兴宁论坛 兴宁新闻 兴宁人的网络社区 (http://bbs.xna8.com/) Powered by Discuz! X3.1