核心提示:...
玩机自古谁无死——电脑死机剖析 |
|
如果说在DOS下面一遇到死机大家首先想到的是病毒的话,在Windows里遇见死机大概已没有多少人会想到病毒了,更多的是没有任何感觉地执行死机三步曲:拼命晃鼠标、按Ctrl+Del+Alt、(痛苦地)按Reset。 长期经历义务劳动(没有存盘?!)和ScanDisk的困扰后,您是否已经感到忍无可忍了?我们今天就来和它算算总帐! 一般地,电脑死机分为启动死机和运行死机,我们下面分别阐述。 启动死机 启动死机主要包括硬件设备故障、BIOS设置不当、硬盘主引导记录受到损坏、系统分区受到损坏、系统文件受到破坏等。要分析电脑的启动死机,必须先分析电脑启动过程。 在开机时,系统BIOS程序将首先对所有组成部分作一次全面检测,这种检测叫上电自检(POST :Power On Self Test)。它依靠BIOS对系统进行检测,顺序是ROM(包含ROM BIOS)、RAM、主机板电路,然后是键盘、硬盘和软盘驱动器。最后POST搜索系统总线,看看有没有带自带BIOS的附加设备存在,如EGA卡和VGA卡等。 当微机出现硬件故障时,POST自测程序在启动时以警叫声或在屏幕上显示错误信息说明故障的所在。以初始化显示器为界,在这以前出现的故障为关键性错误,出现关键性错误时系统不能继续启动而死机,而非关键性错误能显示在屏幕上,一般允许系统继续启动,但有的硬件不能正常使用。对于关键性错误,可根据电脑响应“嘟嘟”警声的长短来判断。 了解POST自测程序的故障,可以判断硬件故障的大概原因。下表是电脑在自检时报告错误的警声及其含义。 对于非关键性错误,屏幕上会按如下格式提示出错代码和有关出错信息: Error Message Line 1 Error Message Line 2 Press<F1>to Resume 在硬件检测结束后,硬盘ROM BIOS程序将接管控制权。该程序首先对硬盘进行初始化,然后启动硬盘主引导记录。硬盘主引导记录的主要目的是引导系统,且识别硬盘的分区。硬盘主引导记录根据分区确定启动分区以及相应的操作系统,最后电脑由这些操作系统完成系统的引导。对于硬盘启动的各流程和可能会出现的故障信息限于篇幅这里不再赘述。 由上面的启动过程可以看出,电脑在启动的每个过程中都可能发生死机现象,如BIOS设置不当就会使硬件识别错误而无法启动、硬盘受到损坏而使硬盘ROM BIOS无法引导、硬盘主引导记录受到病毒的感染,而使硬盘无法引导。对于每个操作系统来说,操作系统的系统文件受到破坏也将无法最终引导系统。在启动过程中,电脑出现死机可能给出错误信息(如上电检测、操作系统引导等),也有可能不会给出任何信息,屏幕上是一片黑暗,此时,电脑可能有致命的错误,如高速缓存损坏、CPU损坏、板卡接触不良等。 运行死机 由于用机环境不同,所使用的软件不一,电脑种类各异,运行死机的情况相当复杂。例如,病毒感染后,整个系统出现莫名其妙的错误而死机;Windows 95的某些系统文件被应用软件的相应文件覆盖后死机;修改软件设置后,产生冲突而死机等。有些死机现象则是由于用户操作不当,如误删除文件、误覆盖文件等。某些应用软件由于编程不规范,也会引起系统冲突而死机。 在这里我们要特别提到运行死机中系统设置的问题。在Windows 95/98系统设置中,使用最多的要数设备设置,即IRQ、I/O端口地址以及DMA的设置。例如,如果同一个设备使用了同一个IRQ,则极易在启动Windows 95时死机,即便是启动了,也会在运行时造成莫名其妙的死机。在为设备设置IRQ时,必须了解系统已安装设备的IRQ占用情况,您可以使用SysChk、QAPLUS等软件检查。另外,您最好了解一下系统设备的IRQ、I/O地址、DMA的占用情况(请参见上期《Windows 95 安装常见设备冲突故障》一文)。 电脑死机预防20例 根据以上分析,我们可以采用如下措施预防或者解决死机问题。 1.在插拨硬件设备时,一定要小心、轻巧,防止板卡接触不良。 2.CPU超频最好不要过高,否则,会在启动时死机或者运行时莫名其妙地死机。 3.在更换CPU时,一定要插好。有些启动死机就是因为CPU没有插好,而浪费大量的检查时间。 4.BIOS设置要恰当。虽然BIOS要设置得最优,但所谓最优是相对的,有时最优的设置反倒 引起启动或者运行死机。例如,某些内存设置和总线设置不要太优。 5.最好配备稳压电源,以免电压不稳而造成运行死机。 6.不要使用来历不明的软盘或者光盘,因为这些盘中可能会带有病毒。不要轻易解包运行用E-mail接收的邮件中所附的软件。因为这些软件可能会带来病毒,例如前不久出现的CIH病毒(以及其变种)就是通过这种途径传播的。 7.在应用软件没有正常结束时,不要关机,这样会造成系统文件的损坏,而使下次运行死机或者启动死机。对于Windows 95/98、NT等系统来说,这点非常重要。 8.在安装应用软件出现是否覆盖文件的提示时,最好不要覆盖。通常系统文件是最好的,不能根据时间的先后来决定覆盖文件。 9.在卸载文件时,不要删除共享文件,某些共享文件可能被系统或者其他程序使用,一旦删除了这些文件,会使应用软件无法启动而死机,或者出现系统运行死机。 10.在设置设备时,最好检查有无保留中断号(IRQ),不要让其他设备也使用该中断号。 11.在加载某些软件时,要注意先后次序。有些软件由于编程的不规范,不能先运行,而应放在最后运行,这样才不会引起系统管理的混乱。 12.在运行大型应用软件(如Office97)时,不要在运行状态下退出以前运行的程序,否则引起整个Windows 95系统的崩溃。 13.如果您的内存较小(如8MB、16MB),最好不要运行占用内存较大的应用程序,否则在运行时极易出现死机。建议在运行这些程序时应及时保存当前正在使用的文件。 14.对于系统文件,最好使用隐含属性,这样才不至于因误操作而删除或者覆盖这些文件。 15.要慎用磁盘扫描程序,我们发现,Microsoft的磁盘扫描程序运行后,可能使系统无法运行。 16.在Windows 95/98中尽量不要运行16位应用程序,有的应用程序在Windows 95中运行时会修改系统文件而使系统无法启动。 17.在升级BIOS之前,应确定所升级的BIOS版本,同时应先保存一下原先的版本,以免升级错误而使系统无法启动。 18.在系统正常结束后再关机。某些硬盘在数据读写状态下关机,将无法启动,此时可将此硬盘拿到其他机器上启动一下再拿回即可。 19.在修改硬盘主引导记录时,最好先保存原来的记录,这样不致因修改失败而无法恢复原来的硬盘主引导记录。 20.最好少用软件的测试版,有些测试版使用后会使系统无法启动。 电脑死机10例 为了让读者更好地领会以上的电脑死机预防方法,我们在下面分析10种典型的电脑死机。 例1 在一个初级用户的机器上安装了DOS 6.22、Windows 98。他做了如下操作: (1) 将C:\下的Command.com拷贝到C:\DOS下; (2)在Config.sys文件中加入Shell=C:\DOS\command.com /p/e:1024。 在启动Windows 98时,按F8键,然后选择7,在出现“Starting MS-DOS....”时死机。 分析:此用户由于错误操作,将DOS 6.22的Command.com替换为Windows 98的Command.com,使MSDOS 6.22无法启动。解决方法是:将C:\下的Command.dos拷贝成C:\dos\command.com即可。 例2 在Windows 98中运行磁盘扫描程序后,运行了一些程序,然后重新启动Windows 98,却出现如图所示的对话框。 单击“确定”按钮后,系统即死机。 分析:在Windows 98中运行磁盘扫描程序时,如果运行了其他程序会使系统文件遭到破坏而使系统无法启动。解决方法只能是重新安装Windows 98。 例3 一台组装机安装后,开机无任何显示。开始以为显卡等其他设备未插好,但重新插好后,仍无反应。 分析:这是一个CPU未插好的典型例子,我遇到过多次,开始确实未想到是插CPU的问题。当时将所有的设备都换完都没有解决问题。后来想换CPU了,重新插好后,一切正常了。 例4 在一台486微机上,将AMI BIOS(1992年版)中的DRAM Write wait选项设为0 w/s。在启动时系统死机。 分析:DRAM Write wait选项用于设置DRAM的写等待状态,这与内存速度有关。对于70ns的内存,不能将此选项设为0 w/s,而应设置为1 w/s。如果您的计算机内存为60ns,则可以将此选项设为0 w/s。 例5 在一台PII233电脑的Windows 98上安装启亨PCI声音卡。在安装结束后重新启动Windows 98时,出现如图所示的对话框。 单击“关闭”按钮后死机。 分析:经过跟踪分析,我们发现,PCI声音卡在安装其驱动程序时,将Windows 98系统文件winspl16.drv覆盖掉,而没有给出任何提示信息。解决方法是返回到DOS下,使用Extract命令从Windows 98安装盘中恢复winspl16.drv文件。 例6 在安装了光盘的应用软件Turbo C 2.0后,在启动时出现“Starting MS-DOS”就死机了。 分析:估计该光盘中的Tubro C2.0软件有毒。使用系统盘启动后,进入硬盘中查看发现Command.com的文件长度为0字节,显然为病毒所为。重新从软盘中拷贝此文件,则硬盘可以启动了。 例7 在启动电脑时,屏幕上显示“Error Loading Operation System”错误信息而死机。 分析:此错误信息的意思是“装载操作系统错误”,此信息是在读取分区引导扇区出错时提示的。可能的原因有: 第一,分区表指示的分区起始地址不正确。例如,把分区表项第三个字节&127;(起始扇区号)&127;由1改为0,即指示该分区的起始地址为指示磁头、指定磁道上的第0个扇区(此位为物理地址,扇区号应由1开始),INT 13H读盘失败后,即报此错。 第二,分区引导扇区所在磁道的磁道标志和扇区ID损坏,找不到指定的扇区。 第三,驱动器读电路故障。这种情况比较少见,多数是随机性读错误,因为系统引导能进行到此处,至少说明已正确地读出了一个主引导扇区。 当遇到此错误时,不妨使用磁盘医生NDD来直接恢复分区表。 例8 在安装Windows 95进入到硬件检测阶段时出现死机,但硬盘灯一直亮着。 分析:显然安装程序与计算机硬件之间产生了冲突。经过分析,如果在BIOS中设置“Virus Warning”为Enable,则Windows 95安装时必定死机。将此选项设为Disable,便可顺利安装。 例9 在Windows 95中运行大型应用程序时,出现硬盘灯疯狂地闪烁,是“装载操作系统错误”随即死机。 分析:这与虚拟内存有关。如果内存比较小,而又运行了大型应用程序,则需要较大的虚拟内存,此时若虚拟内存不够,则会使系统死机。建议删除一些临时文件,为虚拟内存腾出空间来。 例10 在启动Windows 95时,老是说注册表有问题。重新安装Windows 95后,仍出现这样的信息。 分析:这说明Windows 95某些启动文件与硬件产生冲突。首先在启动Windiows 95时,按F8,然后选择3,则可以跟踪Windows 95启动过程,这些启动记录放在bootlog.txt文件中。从此文件可以看出问题之所在。另外,为了减少硬件上的冲突,可将BIOS设置为缺省方式,再启动Windows 95。 如果以上尝试均告失败,则可能主板有问题,建议换一个主板试试。 □黄后软件工作室 王 健 曹国钧 本文出自《新潮电子》98年第十二期 |