Re: 关于WinDbg的内存访问断点命令 ba 的疑惑
WinDbg
关于WinDbg的内存访问断点命令 ba 的疑惑
timixu1983
2011-01-05, 10:44 上午
各位好:
在使用WinDbg的ba命令时,出现一个奇怪的现象。
使用命令
ba r4 8053e644
设置了一个内存访问断点。
kd> g
Breakpoint 0 hit
TestDrv+0x856e:
f851956e 8945fc mov dword ptr [ebp-4],eax
此时的Register Context 为
kd> r
eax=
43688fe9
ebx=00000000 ecx=8053e644 edx=00000080 esi=821a4020 edi=f8b3dda4
eip=f851956e esp=f8b3dd7c ebp=
f8b3dd80
iopl=0 nv up ei pl nz na po nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00000202
TestDrv+0x856e:
f851956e 8945fc mov dword ptr [ebp-4],eax ss:0010:f8b3dd7c=00000000
执行该指令时,并未访问内存 8053E644。为何会被当作断点?
是不是Windbg的BUG
Re: 关于WinDbg的内存访问断点命令 ba 的疑惑
格蠹老雷
2011-01-06, 13:53 下午
用ub命令看上一条指令. 因为通过调试寄存器设置的数据类断点触发的是陷阱类异常( P68 & P88), 报告异常时程序指针指向的是触发断点那条指令之后的那条指令
Re: 关于WinDbg的内存访问断点命令 ba 的疑惑
timixu1983
2011-01-19, 14:09 下午
搞定了。是某杀毒软件导致无法调试。
卸载调杀毒,即可用ub回到上一条指令。
Re: 关于WinDbg的内存访问断点命令 ba 的疑惑
格蠹老雷
2011-01-19, 15:44 下午
真的如此么? 不觉得反汇编会与杀毒软件有关