和平社区

 找回密码
 注 册

QQ登录

只需一步,快速开始

查看: 1489|回复: 0

蓝屏死机为何故

[复制链接]
发表于 2008-6-9 13:55:11 | 显示全部楼层 |阅读模式
蓝屏死机为何故
  死机使令操作者颇为烦恼的事情,常常使劳动成果付之东流。死机使的表现多为蓝屏,无法启动系统,画面“定格”无反映,鼠标、键盘无法输入,软件运行非正常中断等。尽管造成死机的原因是多方面的,但是万变不离其宗,其原因永远也离不了硬件与软件两方面。本来运行的好好的机器现在频频的摆出一张蓝面孔,让人不爽。虽然基于NT架构的Windows 2000/XP系统稳定性已经大大增强,甚至Windows XP号称“从不死机”,但我们仍然会不时看到蓝色警报信息,这就是通常所说的“蓝屏”,究竟是怎么回事呢?

  Windows 2000/XP采用了分层结构,它的两个层又称模式,分别为用户模式(User **e)和内核模式(Kernel **e),应用程序是无法直接访问硬件设备的,只有借助驱动程序才能直接访问。

  不过,即使NT架构再稳定,由于会由于某些原因可能会导致驱动程序或应用程序出现错误,严重时甚至会波及内核层。这种情况下,Windows会中止系统运行,并启动名为KebugCheck的功能,通过检查所有中断的处理进程,并同预设的停止代码和参数比较后,屏幕将变为蓝色,并显示相应的错误信息和故障提示,由于出现这种现象时实际上就意味着死机,因此常称为“blue Screen of Death”(BSOD),又称“STOP信息”或“停止信息”。

由硬件引起的蓝屏死机故障
  1.电脑过热损耗:显示器、电源和CPU在工作中发热量非常大,因此保持良好的通风状况非常重要,如果显示器过热将会导致色彩、图像失真甚至缩短显示器寿命。工作时间太长也会导致电源或显示器散热不畅而造成电脑死机。

  2.移动不当:在电脑移动过程中受到很大的振动常常会使机器内部器件松动,从而导致接触不良引起电脑死机。

  3.灰尘杀手:机器内元器件如果沾染过多的尘粒,如磁头,从而导致读写错误,严重的会引起电脑死机甚至使元器件损坏。

  4.设备不匹配:如主板和CPU不匹配,主频太高和太低都可以引起频繁死机。

  5.软硬件不兼容:如运行Photoshop、AutoCAD三维动画、平面设计软件时,不同的硬件设备效果就会有所不同,可能会造成死机。

  6.内存条故障:主要是内存条松动或内存芯质量所致。

  7.硬盘故障:主要是硬盘老化或由于使用不当造成坏道、坏扇区。这样机器在运行中就很容易发生死机。

  8.CPU超频:超频提高了CPU,同时,也使其性能变得不稳定。究其原因,CPU在内存(RAM)存取数据的速度本来就快于内存与硬盘交换数据的速度,超频使之矛盾更加突出,加剧了在内存或虚拟内存中找不到需要数据的情况,这样就会出现“异常错误”。

  9.硬件资源冲突:是由于声卡或显示卡的设置冲突,引起的异常错误。此外,其它设备的中断、DMA或端口出现冲突的话,可能导致少数驱动程序产生异常,以致死机。

  10.内存容量不够:内存容量越大越好,应不小于硬盘容量的0.5-1%。

  11.使用劣质元件:少数不法商人在给顾客组装兼容机时,使用质量低劣的板卡、内存,有的甚至出售冒牌主板和REMAEK过的CPU、内存,这样的机器在运行时很不稳定,发生死机在所难免。

由软件引起的蓝屏死机故障
  1.病毒感染:病毒可以使计算机的工作效率急剧下降,造成频繁死机。

  2.CMOS设置不当:该故障现象很普遍,如硬盘参数设置、模式设置、内存参数设置不当从而导致计算机无法启动。如将无ECC功能的内存设置为ECC功能,这就会因内存错误而造成死机。

  3.系统文件的错误删除(或错误):由于Windows 9X启动需要有Command.com、Lo.sys、Msdos.sys和 Drvspace.bn 四个文件,如果这些文件遭到破坏或被误删除,即使在CMOS中各种硬件设置正确无误也无济于事。

  4.初始化文件找到破坏:由于Windows 9X启动需要读取System.ini、Win.ini和注册表文件,如果存在 Config.sys、Autoexec.bat文件当然也会读取的。只要这些文件中存在错误信息都可能出现死机。特别是System.ini、 Win.ini、User.dat、
System.dat这四个文件尤为重要。

  5.动态链接库文件(DLL)丢失:在Windows操作系统中还有一类文件也相当重要,这就是扩展名为DLL的动态链接库文件,从这些文件性质上来讲是属于共享类文件,一个DLL文件会有多个软件在运行时需要调用。如果在删除一些应用软件的时候,该软件的安装程序会纪录它曾经安装过的文件并准备将其逐一删除,这时就容易出现删掉动态链接库文件,也是其它软件运行时需调用的情况。由此产生了软件错误。如果丢失的链接库文件是比较重要的核心链接文件,那么系统就会死机甚至崩溃。

  6、硬盘剩余空间太少或碎片太多:如果硬盘的剩余空间太少,由于一些应用程序运行需要大量的内存、这样就需要虚拟内存,而虚拟内存则是由硬盘提供的,因此硬盘要有足够的剩余空间以满足虚拟内存需求。同时还要养成定期整理硬盘、清理硬盘中的垃圾文件的良好习惯。

  7、BIOS升级失败:备份BIOS以防不测。如果你的系统需要对BIOS进行升级的话,那么在升级之前最好确定你所使用的BIOS版本是否与你的PC相符合。如果BIOS升级不正确或者在升级的过程中出现意外断电,将导致系统可能无法启动。

  8、软件升级不当:大多数人认为,软件升级是不会有问题的。事实上,在升级过程中都会对其中共享的一些组件也进行升级,但是其它程序可能不支持升级后的组件从而导致各种问题。

  9、滥用测试版软件:最好少用软件的测试版,因为测试软件通常带有一些bug或者是某方面不够稳定,在使用后出现数据丢失的程序错误、死机或者系统无法启动。

  10、非法卸载软件:在卸载软件是,不要删除共享文件,因为某些共享文件可能被系统或者其它程序使用,一旦删除这些文件,会使一些应用软件无法启动而死机,或者出现系统运行死机。

  11、使用盗版软件:必须经过彻底查毒测试,因为有一大部分这类软件中带有大量的病毒,一旦执行,就会自动修改你的系统、感染系统或应用软件,是系统与心中出现死机。

  12、应用软件本身存在的缺陷或与系统软件不兼容:这种情况是常见的,如在Windows 98 中运行的那些在 DOS 或者Windows 3.X 中运行良好的16位应用软件。Windows 98 是32位的,尽管它号称兼容,但是在许多地方是无法与16位应用程序协调的。微软是不会花大力气去研究准备放弃的东西的。因此如果不是必须的,最好不要使用16位的应用软件。

  13、启动的程序太多:这使系统资源消耗殆尽,使个别程序需要的数据在内存或虚拟内存中找不到了,系统会出现异常错误。

  14、非法操作:如用非法格式或参数非法打开或释放有关程序。

  15、非正常关闭计算机:不要直接使用机箱的电源按钮,否则会造成系统文件损坏或丢失,引起自动启动或者运行中死机。对于Windos 98/2000/NT等系统来说,这一点放非常重要,否则严重的话,会引起系统崩溃或者硬盘损坏的严重后果。

认识蓝色警报中隐藏的信息
  Windows 2000/XP的BSOD窗口与Windows NT4以前的BSOD窗口有着很大的区别,最大的区别是NT的BSOD窗口仅包括一个通用的停止消息代码,但Windows 2000/XP的BSOD包含了停止消息和硬件消息两种类型,前者是发现一个无法恢复的软件错误时产生的错误信息,后者是发现一个严重的硬件错误时产生的错误信息。

  虽然“蓝频”窗口中的信息看起来很复杂,但一般均由以下三部分组成:

1.错误信息
  在“*** Stop:”至“****** wdmaud.sys”之间的这段内容是所谓的错误信息,由出错代码、自定义参数、错误符号等三部分组成,各部分的含义如下:
  出错代码:STOP后面的16进制数字;
  自定义参数:出错代码字符的组成,由程序人员定义,一般用户很难理解;
  错误符号:K**E_EXCEPTION_NOT_HANDLED

  在错误符号后面,这里还显示了一个内存位置和文件名,可以了解到发生错误时的内存位置和源文件。对我们来说,其实最有用的还是前面的出错代码信息,在搜索微软知识库时将会用到。

2.推荐操作
  这里显示了系统推荐用户采取的操作措施和步骤,例如在安全模式下卸载程序、回滚驱动程序、更新BIOS、安装补丁等,不过大部分情况下都需要重新启动系统后才能考虑进一步的操作。

3.调试端口信息
  这里会显示应该如何设置内核调试器的信息,包括内存转储映像是否已写入磁盘

  其实,根据笔者的经验,蓝色警报中除了出错代码比较有用外,对普通用户来说,其余的大部分信息并无多少实际意义,仅供参考而已。

  为调试系统的需要,Windows在系统出现BSOP错误后,KebugCheck会自动生成一个名为Memory.dmp的出错文件,该文件位于C:WindowsMinidump文件夹下,默认设置下,该文件的大小与系统物理内存容量一致,我们可以将该文件压缩后发送给微软的技术支持部门,以获取相应的解决方案,但该文件的容量是如此巨大,如何发送是一个大问题,因此很少有用户真正这样做。

  提示:打开“系统属性→高级→启动和故障恢复”窗口,在这里可以看到“写入调试信息”的生成方式:小内存转储、核心内存转储、完全内存转储、无,基于上面的分析的原因,建议在这里选择“无”。

处理蓝色警报三部曲
  从理论上讲,纯32位的Windows 2000/XP是不会出现死机的,但是这仅仅是理论上。病毒或硬件和硬件驱动程序不匹配等原因将造成 Windows 2000/XP的崩溃,当Windows 2000/XP出现死机时,显示器屏幕将变为蓝色,然后出现STOP故障提示信息。下面我们分别介绍通用的 STOP故障处理方法和特殊的STOP故障排除。

第1步:重启系统
  出现蓝色警报窗口时,我们首先应该考虑的是重新启动系统,大部分情况下重启系统后即可解决问题。不过,一般此时已无法通过“Ctrl+Alt+Del”热启动,而只能按下复位按钮冷启动,或者索性断电后重新开机。

  进入系统时,从“控制面板→管理工具→事件查看器”,或者在“开始→运行”框中键入“eventvwr.msc”命令进入事件查看器界面,在这里根据日期和时间重点检查“系统”和“应用程序”中的类型标志为“错误”的事件,报告某个服务启动失败的错误。

第2步:恢复至最后一次正确的配置
  Windows 2000/XP出现蓝色警报并不是无缘无故而来,NT架构的操作系统也不会乱发脾气,一般都是由于更新了设备驱动程序或者安装了某些软件而造成,有时甚至是用户自行优化系统或删除了某些重要的系统文件所导致,此时可以重启系统,并快速按下F8键,选择“最后一次正确配置”,这样会恢复注册表中 HKEY_LOCAL_MACHINE_SystemCurrentControlSet项的有效注册表信息,但无法解决驱动程序或文件损坏而导致的错误。或者,你也可以尝试按下F8键选择启动至安全模式,如果能够正常进入安全模式,那么说明可能是驱动程序或系统服务的问题。

第3步:查询出错代码
  记下“蓝屏”窗口中的英文信息,特别是“0x0000001E”这段出错代码,然后从另外一台计算机上访问http://support.microsoft.com站点,在左上角的“搜索(知识库)”框中键入“stop ***”,这里的“***”表示出错代码,为阅读的便利,一般当然是选择“中文知识库”,不过很多时候我们恐怕只能在“英文知识库”才能找到答案,或者也可以在Google或百度上进行搜索。
本文提供一些“STOP信息”及解决方法
STOP消息 0x0000000A故障
通常原因:驱动程序使用了不正常的内存地址(设备已经安装)。
1.如果Windows 2000/XP还可以启动,检查“事件查看器”中显示的信息,确定引起问题的设备或驱动程序。
2.关掉或禁用一些新安装的驱动程序,并删除新安装的附加程序。
3.拆下一些新安装的硬件(RAM、适配器、硬盘、调制解调器等等)。
4.确保已经更新了硬件设备的驱动程序,以及系统有最新的BIOS。
5.运行由计算机制造商提供的系统诊断工具,尤其是内存检查。
6.检查Microsoft兼容硬件列表(HCL),确保所有的硬件和驱动程序都与Windows 2000兼容。
7.在BIOS中禁用内存缓存功能。
8.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

STOP消息 0x0000000A故障
通常原因:驱动程序使用了不正常的内存地址(刚加入新设备时)。
1.在安装过程中,屏幕上提示“安装程序正在检查计算机硬件配置”时,按F5,根据提示选择合适的计算机类型。例如,如果计算机是单处理器,请选择“标准PC”。
2.在BIOS中禁用内存缓存功能。
3.拆下所有适配卡,并断开所有不是启动计算机所必需的硬件设备,再重新安装Windows 2000/XP。
4.如果系统配有SCSI适配卡,请向适配卡销售商索取最新的Windows 2000驱动程序,禁用同步协商功能,检查终结头和设备的SCSI ID号。
5.如果系统配有IDE设备,设IDE端口为Primary。检查IDE设备的Master/Slave/Only设置。除了硬盘,拆下其它所有的IDE设备。
6.运行由计算机制造商提供的系统诊断工具,尤其是内存检查。
7.检查Microsoft兼容硬件列表(HCL),确保所有的硬件和驱动程序都与Windows 2000/XP兼容。
8.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

STOP消息 0x00000023和0x00000024故障
通常原因:严重的驱动器碎片、超载的文件I/O、第三方的驱动器镜像软件或者一些防病毒软件出错。
1.禁用一些防病毒软件或者备份程序,禁用所有碎片整理应用程序。
2.运行CHKDSK /f 检修硬盘驱动器,然后重新启动计算机。
3.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

STOP消息 0x0000002E故障
通常原因:系统内存中的奇偶校验错误。
1.运行由计算机制造商提供的系统诊断工具,尤其是内存检查。
2.在BIOS中禁用内存缓存功能。
3.试着用“安全模式”启动。如果“安全模式”可启动计算机,试着更改为标准VGA驱动程序。如果这不能解决问题,可能须要用另外的视频适配卡。“兼容硬件列表”中列出了兼容的视频适配卡。
4.确保已经更新了硬件设备的驱动程序,以及系统有最新的BIOS。
5.拆下一些新安装的硬件(RAM、适配器、硬盘、调制解调器等等)。
6.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

STOP消息 0x0000003F故障
通常原因:驱动程序没有被完全清除。
1.删除一些新安装的软件,包括备份工具或磁盘工具,例如碎片整理和防病毒软件。

STOP消息 0x00000058故障
通常原因:在容错集的主驱动器中发生错误。
1.用Windows 2000/XP引导软盘,从镜像(第二个)系统驱动器启动计算机。
2.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

STOP消息 0x0000007B故障
通常原因:在I/O系统的初始化过程中出现问题(通常是引导驱动器或文件系统)。
1.检查计算机上是否有病毒。这个STOP消息通常在引导扇区有病毒时出现。
2.使用“修复控制台”来修复驱动器。
3.拆下新安装的硬盘驱动器或控制卡。
4.如果系统配有SCSI适配卡,请向适配卡销售商索取最新的Windows 2000驱动程序,禁用同步协商功能,检查终结头和设备的SCSI ID号。
5.如果系统配有IDE设备,设IDE端口为Primary。检查IDE设备的Master/Slave/Only设置。除了硬盘,拆下其它所有的IDE设备。
6.运行CHKDSK。如果Windows 2000不能启动CHKDSK,则必须把硬盘拆下并连接到另一个Windows 2000系统上,然后用CHKDSK命令检查该硬盘。
7.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。

STOP消息 0x0000007F故障
通常原因:硬件或软件问题;常见的原因是硬件失效。
1.运行由计算机制造商提供的系统诊断工具,尤其是内存检查。这个STOP消息经常出现在错误或误配内存的情况下。
2.在BIOS中禁用内存缓存功能。
3.试着拆下或替换硬件:RAM、控制器、适配器、调制解调器和其它外围设备。
4.检查Microsoft兼容硬件列表(HCL),确保所有的硬件和驱动程序都与Windows 2000兼容。这个问题可能是由于不兼容的主板引起的。
5.重新启动计算机。在启动屏幕处,按F8进入“高级启动选项”,然后选择“最后一次正确的配置”。
  如果以上几招还是无法解决问题,也许我们应该考虑重新插拔内存、显卡、网卡,或者用替换法尝试逐个更换,如果这一招还不行的话,恐怕就只能考虑重新安装系统或格式化硬盘了。
您需要登录后才可以回帖 登录 | 注 册

本版积分规则

站点统计|小黑屋|手机版|Archiver|和平家园 ( 粤ICP备13078947号-1 )

GMT+8, 2024-11-23 05:33 , Processed in 0.014387 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表