windows XP系统在正常运行的情况下,如果遇到不可恢复的异常,windows系统会出现蓝屏的情况,比如说在windows系统正常运行的情况下,使用SoftICE调试器本地调试程序,很可能会使Windows系统出现蓝屏的情况;但是若windows运行在调试情况下,使用SoftICE等内核调试器一般就不会出现蓝屏的情况,因为windows系统在调试环境下的异常,可能被内核调试器或系统接管进行处理,很少出现windows蓝屏的情况(说的不太准确)。
1.windows系统蓝屏Dump的设置
在windows中找到 “我的电脑”然后 右击“属性”再找到 “高级”这一栏,点击“设置”即可以进行dump文件的设置,如图:
在启动和故障恢复的对话框里,我们关注的是“系统失败”里的设置,对于“系统启动”的设置,我们暂时可以不去理会。
2.为了便于测试dump文件的测试,我这里将“自动重新启动的”的选项给去掉了,这样做有什么好处呢?当我们的系统出现如蓝屏等故障时,windows系统的画面会停留在蓝屏的界面上,而不是一闪而过,这样的话,我们就可以仔细的查看导致系统出现故障的错误的具体信息,然后进行系统的故障或者错误的恢复;对dump文件的存储有4中方式,我们一般选择“核心内存转储”这一项,因为这样转存的dump文件占用的内存不大,而且又能够携带系统故障的核心信息,帮助排错。
3.转储文件有4个不同的选项但是只有两种保存dump文件的路径:“%SystemRoot%\Minidump”和“%SystemRoot%\MEMORY.DMP”,%SystemRoot%符号的意思是C:\WINDOWS这个系统目录即生成的dump文件在C:\WINDOWS这个文件目录下,后面的Minidump或者MEMORY.DMP表示转储的保存的dump文件的名称。
4.让windows XP系统运行在正常的情况下,不是运行在调试情况下,写一个简单的驱动程序,并在驱动程序中设置 —asm int 3断点,用驱动加载器加载改驱动程序并启动驱动程序,windows XP系统即会出现蓝屏的现象,如图所示:
5.根据前面设置的dump文件的保存路径,在C:\WINDOWS系统目录下即可轻松的找到蓝屏时保存的dump文件,如图所示:
6.使用Windbg调试器,查看dump文件,分析系统出现蓝屏现象的原因,如图所示:
用windbg打开dump文件即可以看到下面的提示信息,如图所示:
载入dump文件以后,windbg会提示我们如何去分析该dump文件,并且已经很明确的告诉我们使用那个命令来分析dump文件,如图所示: