实验—简单蓝屏驱动程序的实现.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验—简单蓝屏驱动程序的实现

简单蓝屏驱动程序的实现 四院四大队四队王犍 一、实验目的: 了解驱动程序,简单改写一个驱动程序实现系统蓝屏,了解驱动程序编译调试的环境,熟悉驱动程序调试编译所需环境的配置方法及过程,熟悉一些驱动程序调试的简单命令,尝试对驱动程序进行简单的调试。 二、实验要求: 完成驱动程序调试的环境配置,通过对现有驱动程序的改写来实现系统的蓝屏。分析导致蓝屏的原因。 三、实验原理: 驱动程序一般由一台主机对另外一台主机(目标计算机)进行调试,在我们的实验中在自己的主机(在这里我们不妨称其为调试主机)中安装了一个虚拟机,虚拟机的操作系统为Windows XP,该虚拟机将作为我们的目标计算机被调试。要能用调试主机完成对目标主机的调试需要在这两者之间建立一个连接,如图的双向箭头所示。具体的链接建立方式会在实验过程中详细的介绍,调试主机还需要有调试所需的工具WinDbg,需要强调的一点是调试主机假设使用WIN2K或以上的版本。主机的操作系统可以不同于目标电脑的操作系统。如不然则需要使用相同版本的操作系统。在我们的实验中调试主机和目标主机的操作系统均为Windows XP。另外我们的调试主机或目标主机至少有一台能有驱动程序的编译软件,我们实验用到的是DDK。DDK编译的Driver.sys驱动程序将作为我们调试的对象。在实验中我们还需要符号表文件也就是Symbols,在实验开始时我们要能将Symbols加载到DDK中 四、实验过程: 一、搭建实验环境 1、在虚拟机启动的过程中,WINDbG显示的是没有链接成功,只有等虚拟机完全启动以后,才会显示连接成功 2、在windbg中,一定设置一个命令行参数reconnect。如下所示, com:port=\\pipe\com_1,baud=115200,pipe,reconnect 3、windbg安装在调试端,驱动源代码、符号表等都安装在调试器这一端,在虚拟机中只需要装载驱动的执行体就可以了。WinXP SP2。安装完成后修改boot.ini文件。在里面[operating systems]节中加入一行, multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=Microsoft Windows?XP Professional - debug /fastdetect /debug /debugport=com1 /baudrate=115200 Edit virtual machine settings,添加一个Serial Port,选择Output to named pipe,然后下一步,第一框里保持默认的 \\.\pipe\com_1 This end is the server. 第三框里选The other end is an application. 选中 Connect at power on 然后点击 Advanced 然后在新窗口中选中 Yield CPU on poll。保存退出。 在虚拟机中,我们要在设备管理器中。找到Com1口,然后再属性页中修改他的速率为115200。 WinDbg的快捷方式。快捷方式的命令行为 C:\Program Files\Debugging Tools for Windows\windbg.exe -y C:\Windows\Symbols\-b-k com:port=\\.\pipe\com_1,baud=115200,pipe -y后面的路径就是我们前面安装符号表的路径。Windbg 在虚拟机中安装Sfilter,重启虚拟机 2.Windbg此时与虚拟机连接上(需要注意:在命令窗口的底部显示“kd”提示符。这代表WinDbg 已经准别好接受命令。如果没有提示符显示,这时WinDbg将不能处理命令,尽管你输入的任何命令都将会被保存在缓冲区域并尽可能快的运行。你必须等待“kd”出现,以 WinDbg已经作好响应的准备 设置断点命令为: bp Sfilter!DriverEntry 通过断点的设置和程序的跟踪我们将找到系统蓝屏的原因。 要看更详细的出错信息报告执行命令:!analyze –v 五、实验结果: 1.启动虚拟机 由于是第一次使用windbg调试虚拟机,在实现过程中遇到很多细节的问题,例如symbols 文件的路径设置以及一些常用命令的使用。通过这次实验,初步掌握了windbg的使用,了解了蓝屏的原因。

文档评论(0)

kaiss + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档