为什么Windows 2K/XP会蓝屏?
NT内核的操作系统采用的是分层结构(层又称为模式), 主要有用户层(User Mode)和内核层(Kernel
Mode), 我们可以通过下面这个形象的比喻来理解Windows的运行规范和蓝屏起因.
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ 产品制造工厂: 整个电脑(包含操作系统、硬件和软件) ┃
┃ 厂 领 导: 内核层 ┃
┃ 生 产 小 组: 用户层(软件、驱动程序) ┃
┃ 值 班 员: Dr.Watson ┃
┃ 保 卫 员: KeDugCheck ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
平时产品制造厂运行得有序而高效, 每个 生产小组加班加点制造各种用途的产品, 工厂里有个极为
严格的规定, 那就是不管要用什么装配零件, 都必须经过直接控制所有零件的厂领导(具有高特许级别,
可以直接访问所欧硬件和内存)的批准, 之后才能到仓库中提取相应零件, 而生产小组只负责生产(只拥有
较低权限, 不能直接访问硬件和有限地利用内存).
有一天, A生产小组没有经过厂领导批准, 偷偷跑到仓库里面想拿一个装配零件, 但马上被年年被评
为先进的值班员Dr.Watson发现了, 于是Dr.Watson理解通知厂领导, 这个生产小组的工作马上被停止, 而
且还在厂宣传栏上贴出一个告示:XXX生产小组出现了错误, 厂领导决定马上将其关闭、整顿, 并会产生记
录在案, 以观后效.
但A生产小组的错误似乎没有引起大家的注意, 一天, D生产小组居然闯入仓库哄抢装配零件, 为了防
止零件资源失控, 产生更严重的混乱, 厂领导立即决定停止整个工厂的工作, 并命令保卫科对所有生长小
组进行全面检查, 保卫科在检查后为厂领导提交了一份用蓝色纸写的报告, 这个报
告主要分成三部分:故障信息、推荐操作、调试端口信息.
1.故障检查信息
***STOP 0x0000001E(0xC0000005,0xFDE38AF9,0x0000001,0x7E8B0EB4)
KMODE_EXCEPTION_NOT_HANDLED ***
其中错误的第一部分是停机码(Stop Code)也就是STOP 0x0000001E, 用于识别已发生错误的类型, 错误第
二部分是被括号括起来的四个数字集, 表示随机的开发人员定义的参数(这个参数对于普通用户根本无法
理解, 只有驱动程序编写者或者微软操作系统的开发人员才懂). 第三部分是错误名. 信息第一行通常用
来识别生产错误的驱动程序或者设备. 这种信息多数很简洁, 但停机码可以作为搜索项在微软知识库和其
他技术资料中使用.
2.推荐操作
蓝屏第二部分是推荐用户进行的操作信息. 有时, 推荐的操作仅仅是一般性的建议(比如: 到销售商网站
查找BIOS的更新等); 有时, 也就是显示一条与当前问题相关的提示. 一般来说, 惟一的建议就是重启.
3.调试端口告诉用户内存转储映像是否写到磁盘商了, 使用内存转储映像可以确定发生问题的性质, 还会
告诉用户调试信息是否被传到另一台电脑商, 以及使用了什么端口完成这次通讯. 不过, 这里的信息对于
普通用户来说, 没有什么意义.
有时保卫科可以顺利的查到是哪个生产小组的问题, 会在第一部分明确报告是哪个文件犯的错, 但常
常它也只能查个大概范围, 而无法明确指明问题所在. 由于工厂全面被迫停止, 只有重新整顿开工, 有时
, 那个生产小组会意识到错误 , 不再重犯. 但有时仍然会试图哄抢零件, 于是厂领导不得不重复停工决
定(不能启动并显示蓝屏信息, 或在进行相同操作时再次出现蓝屏).
Windows 2K/XP蓝屏信息非常多, 无法在一篇文章中全面讲解, 但他们产生的原因往往集中在不兼容的硬
件和驱动程序、有问题的软件、病毒等, 因此首先为大家提供了一些常规的解决方案, 在遇到蓝屏错误时
, 应先对照这些方案进行排除.
1.重启
有时只是某个程序或驱动程序一时犯错, 重启后他们会改过自新.(注意:此时参见7.查询停机码)
2.新硬件
首先, 应该检查新硬件是否插牢, 这个被许多人忽视的问题往往会引发许多莫名其妙的故障. 如果确
认没有问题, 将其拔下, 然后换个插槽试试, 并安装最新的驱动程序. 同时还应对照微软网站的硬件兼容
类别检查一下硬件是否与操作系统兼容. 如果你的硬件没有在表中, 那么就得到硬件厂商网站进行查询,
或者拨打他们的咨询电话.
[color]
Windows XP的硬件兼容列表:http://support.microsoft.com/default.aspx?scid=kb;zh-cn;314062
Windows 2K的硬件兼容类别:http://winqual.microsoft.com/download/display.asp?
FileName=hcl/Win2000HCL.txt
[/color]
3.新驱动和新服务
如果刚安装完某个硬件的新驱动, 或安装了某个软件, 而它又在系统服务中添加了相应项目(比如:杀
毒软件、CPU降温软件、防火墙软件等), 在重启或使用中出现了蓝屏故障, 请到安全模式来卸载或禁用它
们.
4.检查病毒
比如冲击波和振荡波等病毒有时会导致Windows蓝屏死机, 因此查杀病毒必不可少. 同时一些木马间
谍软件也会引发蓝屏, 所以最好再用相关工具进行扫描检查.
5.检查BIOS和硬件兼容性
对于新装的电脑经常出现蓝屏问题, 应该检查并升级BIOS到最新版本, 同时关闭其中的内存相关项,
比如:缓存和映射. 另外, 还应该对照微软的硬件兼容列表检查自己的硬件. 还有就是, 如果主板BIOS无
法支持大容量硬盘也会导致蓝屏, 需要对其进行升级.
┌────────────────────────────┐
│小提示: │
│ BIOS的缓存和映射项 │
│ Video BIOS Shadowing (视频BIOS映射) │
│ Shadowing address ranges(映射地址列) │
│ System BIOS Cacheable(系统BIOS缓冲) │
│ Video BIOS Cacheable(视频BIOS缓冲) │
│ Video RAM Cacheable(视频内存缓冲) │
└────────────────────────────┘
6.检查系统日志
在开始-->菜单中输入:EventVwr.msc, 回车出现"事件查看器", 注意检查其中的"系统日志"和"应用
程序日志"中表明"错误"的项.
7.查询停机码
把蓝屏中密密麻麻的E文记下来, 接着到其他电脑中上网, 进入微软帮助与支持网站
http://support.microsoft.com, 在左上角的"搜索(知识库)"中输入停机码, 如果搜索结果没有
适合信息, 可以选择"英文知识库"在搜索一遍. 一般情况下, 会在这里找到有用的解决案例. 另外, 在
baidu、Google等搜索引擎中使用蓝屏的停机码或者后面的说明文字为关键词搜索, 往往也会有以外的收
获.
8.最后一次正确配置
一般情况下, 蓝屏都出现于更新了硬件驱动或新加硬件并安装其驱动后, 这时Windows 2K/XP提供的"
最后一次正确配置"就是解决蓝屏的快捷方式. 重启系统, 在出现启动菜单时按下F8键就会出现高级启动
选项菜单, 接着选择"最后一次正确配置".
9.安装最新的系统补丁和Service Pack
有些蓝屏是Windows本身存在缺陷造成的, 应此可通过安装最新的系统补丁和Service Pack来解决.
┌─┐
│ 1│
└─┘0x0000000A:IRQL_NOT_LESS_OR_EQUAL
◆错误分析:主要是由问题的驱动程序、有缺陷或不兼容的硬件与软件造成的. 从技术角度讲. 表明
在内核模式中存在以太高的进程内部请求级别(IRQL)访问其没有权限访问的内存地址.
◇解决方案:请用前面介绍的解决方案中的2、3、5、8、9方案尝试排除.
┌─┐
│ 2│
└─┘0x00000012:TRAP_CAUSE_UNKNOWN
◆错误分析:如果遇到这个错误信息, 那么很不幸, 应为KeBudCheck分析的结果是错误原因未知.
◇解决方案:既然微软都帮不上忙, 就得靠自己了, 请仔细回想这个错误是什么时候出现的; 第一次
发生时你对系统做了哪些操作; 发生时正在进行什么操作. 从这些信息中找出可能的原因, 从而选择相应
解决方案尝试排除.
┌─┐
│ 3│
└─┘0x0000001A:MEMORY_MANAGEMENT
◆错误分析:这个内存管理错误往往是由硬件引起的, 比如: 新安装的硬件、内存本身有问题等.
◇解决方案:如果是在安装Windows时出现, 有可能是由于你的电脑达不到安装Windows的最小内存和
磁盘要求.
┌─┐
│ 4│
└─┘0x0000001E:KMODE_EXCEPTION_NOT_HANDLED
◆错误分析:Windows内核检查到一个非法或者未知的进程指令, 这个停机码一般是由问题的内存或是
与前面0x0000000A相似的原因造成的.
◇解决方案:
(1)硬件兼容有问题:请对照前面提到的最新硬件兼容性列表, 查看所有硬件是否包含在该列表中.
(2)有问题的设备驱动、系统服务或内存冲突和中断冲突: 如果在蓝屏信息中出现了驱动程序的名字,
请试着在安装模式或者故障恢复控制台中禁用或删除驱动程序, 并禁用所有刚安装的驱动和软件. 如果错
误出现在系统启动过程中, 请进入安全模式, 将蓝屏信息中所标明的文件重命名或者删除.
(3)如果错误信息中明确指出Win32K.sys: 很有可能是第三方远程控制软件造成的, 需要从故障恢复
控制台中将对该软件的服务关闭.
(4)在安装Windows后第一次重启时出现:最大嫌疑可能时系统分区的磁盘空间不足或BIOS兼容有问题.
(5)如果是在关闭某个软件时出现的:很有可能时软件本省存在设计缺陷, 请升级或卸载它.
┌─┐
│ 5│0x00000023:FAT_FILE_SYSTEM
└─┘0x00000024:NTFS_FILE_SYSTEM
◆错误分析:0x00000023通常发生在读写FAT16或者FAT32文件系统的系统分区时, 而0x00000024则是
由于NTFS.sys文件出现错误(这个驱动文件的作用是容许系统读写使用NTFS文件系统的磁盘). 这两个蓝屏
错误很有可能是磁盘本身存在物理损坏, 或是中断要求封包(IRP)损