驱动文件*。sys一般在目录:
pc机上每个东西都有驱动,键盘,鼠标,显示器、cpu等等。
没有驱动,这些东西都不能运作,就是一堆废品。
谈一谈windows驱动调试。
使用windbg调试。
一般安装ddk后,就安装了windbg,在目录
C: \程序文件(x86) \ windows工具\ 8.1 \调试器\ x64里就有了windbg调试工具。
时,即使命令输入框可以输入命令,但输入的命令不会立即被执行,要等windbg空闲时才能执行;
来终止一个长时间未完成的命令;
,,,
,,
,,
,,//,
,,
,,
,
,,,
,,,
,,
,
,
,,
,
,
,,
,
,
,,
,,
,,
,,
,,
,,//[! wow64exts。k),打印32位,64位堆栈
,//[! wow64exts。k 5],打印32位,64位堆栈,栈帧个数为5
,//, [! wow64exts.info],输出wow64相关的钢,TEB和TLS基本信息
,//[! wow64exts。r],输出处理器当前上下文信息
,,//[! wow64exts。r dumpTest !主要主要],输出函数地址的上下文信息
(延迟加载)。
只
,
,
,,,
,,,
,
,
,
,//重新加载不匹配符号的模块【
,//重新加载不匹配符号的TGame。exe
,
,,
,//,为TGame。exe加载符号信息
,,//显示已经加载进来的模块
,
,
,//,列出所有模块(加载和未加载)对应的符号信息
,,//查看ntdll。dll的详细信息(注意exe, dll等都不要带后缀名)
,
,
,
,
,,,
,,
,,
,
,,,
,,
,
,
,,
,//查看主线程
,
,,
,,
,,,
,,
,
,,
,
,//显示所有线程的CPU消耗
,,,
,
,
,,
,
,,
,
,,
,,
,
,,
,,
,
,,
,,//在TestCommon.dll的Test.cpp文件的ct:: add()函数起始处放置一个断点
(pVar)比;5)& # 39;& # 39;& # 39;& # 39;“,()
,,//不断住进程情况下,打印所有的RegOpenKeyExA调用(打开注册表键值)
,,
,,
,
,,,,,,,,,,,,,,
,,)
,】
,,,
,
,,,
,,,【】
,,),【】
,
,,,,【】
,】
,,)【】才能
,,,】
,,】
,,//不断住进程情况下,打印所有的RegOpenKeyExA调用(打开注册表键值)
,,
,,
,
,,,,,,,,,,,,,,
,,)
,】
,,,
,
,,,
,,,【】
,,),【】
,
,,,,【】
,】
,,)【】才能
,,,】
,,】
命令来修改数值进制表示方式(输入n可查看当前进制,默认为16进制)===
,,
,//表示显示myApp进程里全局变量g_app的内存布局(注:机器见上述说明)
,//查看模块WindbgTest的ct的内存布局(注:机器见上述说明)
,,//将0 x0041f8d4地址处内容按照模块WindbgTest的ct的内存布局来解析
,//,查看这指针的类型及成员变量(注:机器见上述说明)
,,//查看这指针的类型及成员变量,如果某一成员变量为结构体,则把其结构成员也一一打印出来
,//查看钢(过程# 39;s环境块)内存结构
,,//查看成员变量的值(注:机器见上述说明)
,//查看这指针中的成员变量(注:机器见上述说明)
,//显示局部变量nCount的地址(前面4198608为10进制表示地址,004010 d0为16进制表示地址)形如:评估表达式:4198608=4198608 d0
,,,
,,
,//,查看局部变量nCount的值
,//,查看函数参数变量一个的值
,,与值
,,
,
,,
,
,
,,null