12 2011 档案
摘要:sxe 一般后面接ld XXXX,可以用来在加载XX模块时下断点。 例如:sxe ld user32.dll参考: http://stackoverflow.com/questions/1366051/windbg-setting-conditional-breakpoint
阅读全文
摘要:0:000:x86> .exr -1 ExceptionAddress: 00000000013c354e (MyTest!foo+0x000000000000001e) ExceptionCode: c0000005 (Access violation) ExceptionFlags: 00000000 NumberParameters: 2 Para...
阅读全文
摘要:MMPTE其实是个union,它抽象了PDE,PTE,原型PTE等数据结构 kd> dt _MMPTE -r2 nt!_MMPTE +0x000 u : __unnamed +0x000 Long : Uint4B +0x000 Flush : _HARDWARE_PT...
阅读全文
摘要:PsGetCurrentThread() == Irp->Tail.Overlay.Thread A进程打开设备,返回一个句柄。B进程会duplicate这个句柄
阅读全文
摘要:MDL的本质就是记录一段虚拟地址所对应着的一系列的物理地址。MDL数据结构的结尾是一组PFN,记录着物理地址,相关宏是MmGetMdlPfnArray。初始化:一般用用IoAllocateMdl初始化,但是这个步骤并没有建立起虚拟地址和物理地址的联系。IoAllocateMdl会调用MmInitializeMdl用于初始化MDL,填充MDL的header。校验MDL对应的虚拟地址可读写:MmProbeAndLockPages建立与PFN的联系:MmBuildMdlForNonPagedPool,IoBuildPartialMdl,MmProbeAndLockPages建立新的虚拟地址映射:Mm
阅读全文
摘要:MSDN的文档只是说不能,但没有说清楚到底为啥。 微软的Doron在他的博客里提了一下,http://blogs.msdn.com/b/doronh/archive/2010/02/02/what-is-irql.aspx,但是还是没有说的太清楚。 其实使用分页内存的时候,如果访问Swap out的内存会触发0E号异常(KiTrap0E),会间接调用MmAccessFault。出于同步要求,他...
阅读全文

浙公网安备 33010602011771号