Re: windbg的u命令?

WinDbg

windbg的u命令?


Thomson 2008-10-29, 23:22 下午

使用windbg的u命令的时候,会找出前面最近的一个symbol,显示一个symbol+offset的形式,
比如,
u xxxxxxxx
ntdll!RtlpFreeHeap+0x489
77da1ef6 fb              sti

可是我用?计算,确不是后面反汇编的eip,
? ntdll!RtlpFreeHeap+0x489
Evaluate expression: 2010783924 = 77da20b4

这是怎么回事?
我用calc算了一下,和后面的情况一样,前面的offset究竟代表什么呢?

Re: windbg的u命令?


zhzhtst 2008-10-30, 01:19 上午
Performance-Optimized Code

Re: windbg的u命令?


手语 2008-10-30, 11:08 上午
因为OMAP优化打开了
OMAP优化会把使用频率高的代码放到代码段的前边
这样是为保证working set尽量小,提高内存使用效率
所以会产生这种问题

记得在Under the Hood很早一期有具体讲
需要细节就去查查
鸿鹄安知燕雀之志

Re: windbg的u命令?


手语 2008-10-30, 11:11 上午
OMAP打乱了代码物理上的排列顺序
但是逻辑上是连续的
ntdll!RtlpFreeHeap+0x489是逻辑上的偏移关系
具体地址就是实际的虚拟内存地址了

细节已经记不太清楚了,还是得自己查查
鸿鹄安知燕雀之志

Powered by Community Server Powered by CnForums.Net