驱动开发:使用WinDbg分析定位Windows蓝屏问题
2017-01-18 16:17
453 查看
驱动开发中最头痛的问题之一莫过于随机的系统蓝屏,一切灰飞烟灭。不过还好Windows有dump文件可以帮助定位相关问题。如果蓝屏时系统明确提示是你所开发的驱动的SYS文件引起的蓝屏,那就好确认了。
在这里介绍使用WinDbg定位到蓝屏的驱动的源代码的方法。不过要满足两个条件:一.必须是所开发的驱动sys文件引起的蓝屏。二.要有源代码。
定位方法:
一.使用源代码编译Debug版本的驱动文件。必须是Debug版本,否则无法看到源代码。
二.安装驱动,运行,等待蓝屏。
三.重启之后,使用管理员权限打开WinDbg,设置Symbol File Path:如
SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols;D:\LWF_SOURCE\Solution\x64\Win7Debug
这里有两个路径,一个是SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols,系统会自动下载相应的Symbol。另一个是D:\LWF_SOURCE\Solution\x64\Win7Debug,这个比较重要包含驱动的pdb文件,如果没有它,就无法定位到源代码。
再设置Source File Path,如
D:\LWF_SOURCE\Solution,这个是驱动源代码的根目录。
四.打开pdb文件,运行!analyze -v命令。之后就能看到在哪一行代码出了问题。蓝屏也就好解决多了。
在这里介绍使用WinDbg定位到蓝屏的驱动的源代码的方法。不过要满足两个条件:一.必须是所开发的驱动sys文件引起的蓝屏。二.要有源代码。
定位方法:
一.使用源代码编译Debug版本的驱动文件。必须是Debug版本,否则无法看到源代码。
二.安装驱动,运行,等待蓝屏。
三.重启之后,使用管理员权限打开WinDbg,设置Symbol File Path:如
SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols;D:\LWF_SOURCE\Solution\x64\Win7Debug
这里有两个路径,一个是SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols,系统会自动下载相应的Symbol。另一个是D:\LWF_SOURCE\Solution\x64\Win7Debug,这个比较重要包含驱动的pdb文件,如果没有它,就无法定位到源代码。
再设置Source File Path,如
D:\LWF_SOURCE\Solution,这个是驱动源代码的根目录。
四.打开pdb文件,运行!analyze -v命令。之后就能看到在哪一行代码出了问题。蓝屏也就好解决多了。
相关文章推荐
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- windows mobile开发循序渐进(6)windows mobile device center 使用问题
- Windows驱动开发入门遇到的问题和困难
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- 使用windbg分析dmp文件定位程序bug
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- windows mobile开发循序渐进(6)windows mobile device center 使用问题
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- 使用WinDbg对Windows Live Toolbar死锁的简单分析
- 在Windows Mobile和Wince(Windows Embedded CE)下使用.NET Compact Framework进行GPS NMEA data数据分析的开发
- 使用spotligh+sqltuning+loadrunner对数据库性能问题进行定位和分析