|
电脑崩溃和死机原因分析
当你的电脑无缘无故死机了,到底发生了什么?为什么有的操作系统看起来比其他操作系统稳定呢?看完本文也许您会了解一些。
所有的电脑都会崩溃,任何的操作系统都难以幸免。(在写这篇文章,回答这个问题时,它就曾经崩溃过一次=))。但是指出引起崩溃的原因并不是一件简单的事:麻省理工学院的计算机科学系教授Daniel Jackson指出。Jackson教授认为其潜在的根本原因是硬件和软件开放商都试图在“互联网时间”内迅速推出他们的产品,这样做的结果是产品的质量和可靠性受到影响。
通常一个操作系统,是由百万行的代码和数百个程序构成。同时由数百个人在一起合作,这不是一件容易的事。并且最终的结果很难达到完美无缺的。为了找出那些小故障,开发者在软件接近完成时雇佣测试者。当问题找到后,补丁程序写入,纠正这些错误。它们的确防止了崩溃。然而原始的错误代码并没有被删除。同时Jackson教授还指出:测试并不能找出设计层面的缺陷。
引起崩溃的来源主要有三种:1,应用程序。2,设备驱动程序。3,操作系统。绝大多数的崩溃源于前二者。当一个应用程序试图访问另一个应用程序的内存时,往往会发生错误。如:当Word开始使用为Excel保留的内存空间时,就好象一个国际象棋选手移动了另一个选手的棋子。这时另一位选手或裁判就会宣布:“游戏结束”。
理论上,一个文字处理软件并不会引起整个电脑的崩溃,但是事实上,情况往往是如此。那是因为操作系统就好像刚才说的那个裁判,当他发现一个程序正在修改另一个程序时,它就会吹响口哨,因为这可能导致系统的不稳定。不同的操作系统对同样的问题有不同的反应,如早期的WINDOWS版本就会发生“蓝屏死机”,越来越多更加稳定的操作系统在每个应用程序上构筑了“虚拟墙”。所以即使一个程序不能按计划执行,也不会打断其他程序,从而引起整个系统的崩溃。
设备驱动是一种沟通操作系统和硬件的程序。BUG通常在产品发布后才被发现。通常是制造商在产品发布之后提供驱动更新。新的应用程序(尤其是图像编辑软件)一般要求新的驱动,以此来消除原有驱动造成的问题。微软声称,通过WINDOWS XP中的自动更新驱动程序,XP将比老的WINDOWS版本可靠性提高十倍。老的电脑的驱动程序可以在硬件制造商的网站上找到。
你的操作系统很少会直接导致崩溃,但是有许多情形会引起崩溃,如错误的应用程序内存地址。不能校验内存容量,都会使系统变的不稳定。操作系统的BUG也会因为软硬件的增加而显现出来。
不兼容导致的死机故障
电脑最近总是显示内存不足,每运行约一个小时后,就会突然出现蓝屏故障。启动重新开机后要不了多久,故障现象依然出现。
在使用多个杀毒软件交叉杀毒,又重装了系统后故障依然存在,所以笔者开始怀疑不是病毒或Windows安装错误引起的。在开机半小时左右即将出现蓝屏现象前查看任务列表,发现此时内存***加载了上百个名为“Winoldap”的进程,查阅该软件和微软的说明文档,原来这是一个与DOS应用程序兼容性有关的问题。
原来,我使用了一个Win95时代开发的系统集成软件。该软件在运行过程中,不断地从接口上读取以压缩包形式传送的外部信息,系统每读进一个压缩包,就会自动调用附带的PKunzip程序去解压缩,而PKunzip是DOS环境下的应用程序,完成任务后不会自动退出,于是此程序不断地驻留于内存中,一定时间后就会导致内存资源严重耗尽,最终出现蓝屏现象。明白了原因后,简单的设置就可以解决问题:找到PKunzip.exe程序,在属性里单击“程序”,选中“禁止MS-DOS程序检测Windows”前的复选框,确认,再试运行故障消失。
除了这种禁止检测的方法外,如果你使用的是WinXP,还可以使用兼容模式来运行该程序,WinXP会为这些老程序自动加载虚拟机。看来,遇到怀疑是病毒破坏、但杀毒软件处理不了的故障,要看看是不是Windows与以前的程序兼容性引起的问题。虽然蠕虫类病毒经常会打开无数进程占用系统资源导致死机,但Windows显示资源耗尽后死机,不一定就是病毒引起的。
预防死机的小技巧
计算机病毒感染、黑客攻击、“千年虫”发作、使用操作不当,或者频繁地安装和删除各种各样的应用程序,都会引起系统不能正常启动。为预防起见,应经常将下列与系统启动有关的关键文件拷贝到第二个硬盘或软盘中以备使用。
C:目录下的Autoexec.bat、Autoexec.dos、Config.sys、Config.dos、Msdos.sys
C:Windows目录下的Control.ini、System.ini、Win.ini、System.dat、User.dat
一旦机器无法正常启动,设法将上述文件拷贝回原来的目录中,往往可以起死回生。
无论是兼容机还是器牌机,在使用过程中都会出现莫明其妙的死机现象。死机是一种较常见的故障现象,同时也是一种不容易解决的疑难病症。特别是当电脑死机后,此时我们无法使用软件或工具对机器进行检测,维修起来常常令人头痛。
一.死机一般表现为:
1)加电后没有主机没有任何反应,电源指示灯不亮,风扇不转;
2)系统不能正常启动,在启动过程中突然画面停滞;
3)在启动过程中显示器黑屏或在使用过程中显示器黑屏;
4)图像"凝固",不进行更新,但键盘灯能够打开和关闭;
5)键盘锁死没有反应;
6)鼠标能够正常移动但是主机没有反应;
7)软件运行非正常中断;
8)经常的出现蓝屏。
9)经常报内存错误或溢出。
我们如何才能迅速的解决故障,让机器恢复正常工作呢?
二.故障表现
具体来说,死机现象可分为硬件和软件两种情况。:
1.硬件
硬件造成的死机常常有:市电电压不稳,主机电源输出电压过低或过高,机箱内的温度过高,内存温度过热,CPU温度过高,超频,干扰,外设自身有故障,板卡接触不良,主机与外设连接的数据线接触不良等。
(1) 市电电压不稳
计算机电压工作范围一般在180V-240V之间,当电压低于180V时,开关电源输出电压过低或保护,这时主机容易重启或自动关机;当电压高于240V时,市电输入电压超过了主机电源的允许工作范围,但由于电路的元器件的离散性,此时电源可能还没有保护,这时次级电源输出可能偏高,同样也会造成死机现象。
(2) 主机电源不完全损坏
当主机电源内部电路损坏时,这时的电压输出可能有偏差或电流输出不足,造成有效负荷率不足,这时也会产生死机现象。目前电脑主机使用的开关电源大都使用TL494或相类似的PWM控制芯片,比较器一般采用LM339或LM393来控制判断主机是否发送开关机信号。该芯片有故障时,会出现我们用导线短路绿线和黑线后(有的书上要求使用100O电阻,其实没有必要,电源内部电路中已经串接了2K左右的电阻,即使把其短路,电流也不过几个毫安),电源的风扇工作,用万用表测各路输出电压也基本正常。但是接入电路后,电源不能正常工作。这主要是该芯片损坏后,电压取样有误,不能隽带重负载所致,只要更换同型号芯片即可。
我遇到过一次,一台杂牌开关电源,使用一年半左右后,主机经常死机或不能启动,最后检查开关电源,发现输出的+5V高达5.86V,而+12V却只有9.9V,像这样的电源不死机才怪呢,还好,没有把主板烧毁。
(3) 机箱内的散热不良
机箱内灰尘过多也会导致系统死机。灰尘是电脑的大敌,过多的灰尘附着在CPU、芯片、风扇的表面会导致这些元件散热不畅或接触不良;同时印刷电路板上的灰尘在潮湿的环境中常常导致短路。两种情况均会导致死机现象。这种情况常见于一些老的电脑在放置一年或两年后再打开时就什么反应也没有了或者开机后“嘀嘀”乱叫,还有就是机器到夏季后经常出现死机现象。
因为PIV电脑的CPU的温度传感器集成在CPU内部,其测温准确,所以一开机CPU温度一般都在50左右,远远高于SOCKET 370 CPU的检测温度(30左右)。不过,因为PIVCPU的发热量大,在选用CPU风扇时一定要根据CPU的型来选择相应的CPU风扇,别让出现小马拉大车的情况,否则死机不断。
解决方法:我们可以用毛刷将灰尘扫去,再用电吹风(冷风档)把板卡的灰尖清理干净。
注意:不要将毛刷和棉签的毛、棉留在电路板和元件上成为新的死机故障源。如果我们能够一年清理一次主机和显示器内部的灰尘,我们的爱机就不会无缘无故的罢工了。
(4) 超频
许多DIY朋友喜欢通过超频来提高自己电脑的性能,这样可以少花银子多办事。但是也存在着很大的隐患:轻则造成死机,重则可能造成CPU,内存,硬盘的彻底报废。
我就有过一次超频的经历,把66外频的主板硬超上83外频,刚开始使用效果不错,当我我正在为自己的小试牛刀而沾沾自喜时,两天后,突然在运行时,系统提示找不到硬盘。开始我还不在意,然后越来越频繁,最后在CMOS里也找不到硬盘了。特别现在的P4CPU其集成度越来越高,有的已经采用0.09微米的线路,当我们超频使用时,很容易造成CPU内部电子过量衰减,最后连接线路彻底断裂,造成CPU报废。
(5) 主板跳线错误
有的主板的外频和倍频使用路线或拔码开关,CPU或内存的供电电压选择使用跳线设置,这时我们要根据说明设置相应CPU的主频倍频参数和相应的使用电压。如果设置不对就可能对CPU造成超频,设置参数过高时,就可能黑屏或一进系统就死机。有时我们在对CMOS放电后没有把跳线跳回原来位置,这时在加电启动时就会黑屏不启动。有的主板同时支持SD和DDR两种内存,注意在主板上有跳线选择+2.5V和+3.3V两种电压设置。特别是CPU的核心电压设置一不能出现错误,否则极易造成CPU报废。
(6) 外设内部电路损坏
当外设如显示器,打印机,M等内部电路损坏时,再与主机连接后,会短路其相应端口,这时主机加电自检时就不能通过或造成电源保护。有的刻字机,编程器在先于主机加电后,这时主机加电后不能启动。
(7) 与外设连接的数据线接触不良。
外设与主机的数据线连接有松动时,也可能造成数据在传输过程中出现中断或错误,同样会造成机器无规律的死机。
(8) 硬件质量不良或假货,水货。
硬件质量不过硬,在长时间工作或工作环境温度过高或过低时,也会出现死机现象。特别是一些REMARK的电脑产品,装在自己电脑上出现毛病,最好查来查去也查不出问题所在时,这时最好考虑一下是不是买到JS的货了。
前一段时间有不少酷鱼40G的硬盘,买到家还不到一个星期,就出现坏道。然后FORMAT后就正常了,但是过一段时间故障再次出现,然后是越来越严重,有时还会莫明其妙的丢数据。
(9)意外损坏
我们在维修过程中没有泄放身上的静电或雷击电流通过未经保护的电源及MODEM电话线进入主机,损坏电源、主机板、MODEM及各种内外设备。意外损坏后有时元器件表面没有明显的烧,裂痕迹,这时只能通过交换法、拔插法测试主机各部件的好坏来判断。
(10)干扰
现在家里都有许多家用电器,特别是是变频空调,洗衣机,电磁炉等,这些电器在工作时会向空气中幅射大量的电磁波,如果电脑就在附近,那么也可能出现莫名其妙的死机或蓝屏现象。这时我们最好把电脑换一个地方试试。
(11)内存损坏或不兼容
当内存内部出现坏块时或与主板的兼容性不好时,也会经常出现:注册表错误,内存报错,蓝屏,系统资源不足,然后死机。
现在的主机的功能越来越方便,如键盘开机,密码开机,STR等。殊不知,功能越多,其出现故障的可能性就越大。特别是STR功能,当把机器的该项功能打开时,我们选择睡眠时,这时系统就把当前的设置保存在内存中,然后把其他部分的电路关闭,只有副电源工作和内存相关电路工作。在睡眠期间,内存不断的刷新,其中的内容不会丢失。不过如果在夏季,因为每条内存的功率大概在20W左右,长时间的睡眠时,就会造成热量积聚过多,散不出去,最后把主机电源或内存烧毁。
2.软件
软件引起死机的故障有很多,如病毒,驱动程序安装错误,驱动程序与系统或其他软件冲突,CMOS设置错误,CONFIG.SYS或AUTOEXEC.BAT配置不正确,WIN.INI或SYSTEM.INI文件加载的文件丢失或被破坏,加载的程序过大过多,系统剩余资源太少等。
(1) 病毒
一般表现为机器原起初能够正常运行,某一日突然运行速度变慢,出现频繁的死机现象。这时我们要首先用最新的杀毒软件进行杀毒,确定机器是否已经感染了病毒。现在的电脑病毒层出不穷,传播方式大都倾向于通过网络传播,因此我们在上网时,一定要安装网络杀毒软件,并且把一些开放的不常用的端口关闭。
(2) 驱动程序安装错误
硬件的驱动程序安装错误或硬件自身的驱动程序有BUG时,也会造成死机现象,这时需要检查所安装的硬件的驱动程序是否与硬件的型号或核心芯片型号相匹配。如果可以,到网上下载最新的该硬件的驱动程序。
(3) CMOS设置错误
CMOS的内容如CPU主频,倍频,内存的刷新时间,L1,L2是否打开,ECC校验或偶校验,15-16M等,以上内容设置错误时,会明显的感到主机的运算速度变慢,最后死机。
当把CMOS设置中的“Anti Virus”或“Virus Warnning”病毒防护功能打开时,我们在安装WIN9X软件过程中就会产生死机现象,因为这时系统阻止了程序向主引导区和C盘的BOOT区的写操作指令。
由于频繁修改CMOS参数,或病毒对CMOS参数的破坏,常常导致CMOS参数混乱而很难恢复。可以采用对CMOS放电的方法并采用系统BIOS默认设置值重新设定CMOS参数。CMOS的放电方法可参照主板说明书进行。重设CMOS参数后,还必须对硬盘杀毒。
对CMOS可以取其默认设置,如"LOAD SETUP DEFAULT"和"LOAD BIOS DEFAULT";
(4) CONFIG.SYS或AUTOEXEC.BAT文件配置不正确
如果是在软件安装过程中死机或安装完后某软件后在重新启动时死机,一般是系统的某些配置与所安装的软件不匹配。这时可试着对CONFIG.SYS和AUTOEXEC.BAT中的相关驱动程序设置进行修改。
对CONFIG.SYS和AUTOEXEC.BAT还可在启动时按F5跳过系统配置文件或按F8选择逐步执行CONFIG.SYS和AUTOEXEC.BAT中选项,以检查是某一驱动程序或加载文件的问题,尤其是EMM386中关于EMS、XMS的配置情况,我们可以此来判断故障的原因;
一些硬件驱动程序和内存驻留程序则可以通过不装载它们的方法来避免冲突。
对于WIN9X操作系统,已经不再需要上述两个文件的支持便可以正常启动系统,这两个文件主要是为了保留对原DOS程序的支持和兼容。
(5) WIN.INI和SYSTEM.INI文件中需要加载的文件丢失或破坏。
如果WIN.INI和SYSTEM.INI中需要加载的文件被破坏或丢失,在系统启动过程中也会出现只有光标长时间的闪烁,键盘,鼠标均没有反应的情况。不过大多数出现的是提示某一个文件无法找到。这时我们可以根据提示来找回该文件或在WIN和SYSTEM文件中把相应的选项删除。
如果是突然有一次开机后系统不能启动,这时我们可以使用SCANREG/RESTORE命令来恢复某一天的注册表试一试。
(6) 软件有冲突或不兼容
随着操作系统的适用性越来越方便,其程序和指令也越来越庞大,不同软件在运行时难免有冲突不不兼容的地方。有时防病毒软件的初期版本可能在设计时就有小BUG,所以当用户安装后就会出现主机不能关机,系统启动缓慢,蓝屏死机等问题。这时我们只要把该软件关闭或卸载就可以了。判断的标准是如果在安装某一软件时系统工作正常,而当安装完某一软件后系统不正常了,那么问题肯定是该软件造成的。
(7) 加载的程序过大过多或系统资源太少
如果主机配置太低或启动的应用软件过于庞大时,也会产生死机现象。这时可以在我的电脑属性里,选择“用户自己指定虚拟内存设置”,把系统虚拟内存加大为物理内存的两倍或更多。解决的主要方法还是根据机器的配置选择相应的应用软件。
(8) 网络问题
有时候网络不正常也会造成死机现象。现在流行的联众,传奇等网络游戏,如果网络不正常,在与服务器通讯过程中也会产生死机现象。有的表现为在上网过程中死机,有的表现为掉线后死机。
三.解决方法
电脑故障的解决基本原则:先软后硬,先外后内,先主后从,最小系统,逐一替换。
四.举例说明
(1)一台联想PII400主机,在安装完瑞星杀毒软件后,启动速度变慢。打开一个应用软件,如WPS2000,竟然要花30分钟时间。仔细测试,不但打开应用软件时间长,在使用打印机打印文档时,打印一张A4纸,也要花接近10分钟的时间。分析故障出现的前后情况,最后把瑞星杀毒软件卸载后,系统恢复正常。
今年新上市的****2003杀毒软件也还存在着不稳定和不兼容的情况,安装后经常会出现蓝屏或死机情况。
我们在安装杀毒软件时,最好在应用软件安装完好,最后再装杀毒软件,以尽可能减少不兼容或冲突的产生。
(2)一台PIII800主机,采用小型紧凑机箱,在每年7,8月份,经常出现突然关机,再开机无效。必须把电源拔下来过几秒外后插上再开机才能启动。这种故障主要是因为机箱小,内部空间狭窄,再加上使用一年多以后,灰尘过多,空气流动不畅,致使主板,CPU,电源产生的热量散不出去,最后造成电源保护或死机。最后打开机箱,为CPU和电源除尘后故障排除。
(3)一台CII566主机,刚在电脑公司装好的机器,一放到客户的办公室里,用不了半个小时就蓝屏死机。此问题从公司到客户的办公室里往返了好几次,都是在公司正常,一到客户的办公室里就死机。最后检查发现,电脑的上方就是一台正在工作的空调。最后把电脑搬离空调一定距离后,故障排除。
(4)一台PIV2.0机器,客户刚买回家没两天,在使用睡眠三个小时后,无论怎么按键盘,鼠标也不能唤醒。这种问题主要是用户无意中把CMOS设置中的STR功能打开(设置为S3),然后使用睡眠后,导致电源过热烧毁。最后更换电源故障解决。
(5)一台P166G的脑,在安装完RealPLay后,系统提示重启后,当出现蓝天白云后就再也没有反应。这个问题可能是166MMX机器上安装的软件与RealPLay软件有冲突或者是缺少RealPLay软件需要的文件,造成在启动时出现死机现象。最后进入安全模式,把RealPLay卸载后,就可以正常启动。
寻找死机故障“真凶”
CPU可以说是计算机中最精密的硬件,小小的身躯内,保护了数以千万计的晶体管。因此,它对工作环境的要求也是比较严格的。
电脑用户大都会有这样的体会,计算机在使用一段时间后,开机时会出现非常大的噪音,如果电脑摆放在灰尘比较多的屋子里,这个问题则更为突出。对此现象,大多数用户都采取了放任的态度,虽然声音大些,但是不影响正常工作即可,而且一般噪音在开机一段时间后会减弱。噪音的产生是由于CPU或电源风扇积聚过多灰尘所致。必须要说明的是,此类问题同样可能影响机器的正常工作,由风扇引起故障的例子也是比较常见的。
前些天,朋友打电话告知,他的机器总是无故死机,重装操作系统也不能解决,笔者只好亲自去查看。朋友的机器配置如下:赛扬 300A CPU/杂牌BX主板/128MB现代PC 100内存/希捷20GB硬盘/杂牌TNT显卡。刚一开机,嗡嗡的噪音大作,朋友解释说这种噪音已经有一段时间了。然后机器自检、读取设备列表、启动Windows,一切正常。在Windows中运行一些小的程序,开始没有什么问题,但没过多久就开始死机。重新启动机器,在运行中频繁死机。根据以往经验,死机多半是由于内存出现问题,于是笔者把自己的内存拿过去试验,一段时间之后仍然出现死机。于是将目光转向硬盘,鉴于希捷的硬盘发热量较大,用风扇直吹硬盘予以降温,结果故障依旧。此时笔者觉得可能是系统本身出现问题,怀疑系统维护的不好,造成系统混乱。重新安装Windows 98,成功安装后一段时间仍然死机。
看来问题很可能发生在CPU身上了,难道是由于CPU过热引起的死机?笔者先启动机器,运行了一会,关机后用手接触CPU表面,发现只是微温,没有任何过热的迹象。笔者又将自己的CPU换到朋友的主板上,结果运行了很长时间都没有问题。难不成是朋友的CPU坏了?将他的CPU装到我的机器上,结果也没有问题,实在令笔者奇怪。忽然笔者想到,因为朋友的CPU风扇噪音太大,所以笔者测试时一直使用自己的CPU风扇,会不会是风扇的问题呢?将朋友的风扇除尘、清理、上油,再重新装上,嗡嗡的噪音没有了,故障也随之消失。
仔细考虑,认为之所以会频繁死机,是因为风扇灰尘太多,干扰了正常运行,产生噪音的同时还会大大降低风扇转速,影响降温效果,使得内存或CPU不能正常工作,才会出现死机的状况。因此,不要小看小小的灰尘,有时它们也会导致很大的问题。
Win XP“死机”也玩个性
使用Windows XP系统的朋友电脑死机的几率比以前大大减少,但是由于种种原因,电脑有时会长时间没有响应,形同死机。其实,电脑并非真正死机,而是处于一种假死的状态罢了。检验方法是:按下数字区的Num Lock键,如果指示灯有反应,就说明是假死机。这时,我们可以按下“Ctrl+Alt+Del”组合键,在“Windows任务管理器”里执行“结束任务”。不过有时候这招也不是很灵,虽然出现了“正在关闭……”的提示框,系统还是会很长时间没有反应。能不能给系统来点个性化设置,让“死机”变得聪明、快速呢?随我来。
在“开始→运行”中输入“regedit”打开“注册表编辑器“,对注册表做如下修改:
1.设定程序出错时的等待时间
打开“HKEY_CURRENT_USERControl Paneldesktop”,在右边的窗口中找到“HungAppTimeout”,将该键值修改为2000,单位是毫秒。
2.加速关闭应用程序
打开“HKEY_CURRENT_USERControl PanelDesktop”,在右边的窗口找到“WaitToKillAppTimeout”,将该键值修改为10000,单位是毫秒。
3.允许强行关机
打开“HEKY_USERS.DEFAULTControl Paneldesktop”,在右边的窗口找到“AutoEndTasks”,将该键值修改为1。
4.系统死机时自动重启
打开“HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlCrashControl”,在右边的窗口中找到“AutoReboot”,将该键值修改为1。
经过以上的修改,你会发现系统在“死机”时变得聪明了许多 |
|
|
|
|
|
|