Advanced Debugging
About AdvDbg Consult Train Services Products Tools Community Contact  
欢迎光临 高端调试 登录 | 注册 | FAQ
 
  ACPI调试
Linux内核调试
Windows内核调试
 
  调试战役
调试原理
新工具观察
 
  Linux
Windows Vista
Windows
 
  Linux驱动
WDF
WDM
 
  PCI Express
PCI/PCI-X
USB
无线通信协议
 
  64位CPU
ARM
IA-32
  CPU Info Center
 
  ACPI标准
系统认证
Desktop
服务器
 
  Embedded Linux
嵌入式开发工具
VxWorks
WinCE
嵌入式Windows
 
  格蠹调试套件(GDK)
  格蠹学院
  小朱书店
  老雷的微博
  《软件调试》
  《格蠹汇编》
  《软件调试(第二版)》
沪ICP备11027180号-1

《软件调试》答疑

帖子发起人: whatday   发起时间: 2012-02-21 10:36 上午   回复: 1

Print Search
帖子排序:    
   2012-02-21, 10:36 上午
whatday 离线,最后访问时间: 2012/2/21 13:41:01 whatday

无等级
注册: 2012-02-21
发 贴: 1
请教一个关于5.2章 LBR栈的问题
Reply Quote
首先感慨一下,张老师这书实在是太好了,感觉完全是如饥似渴,难得的好书呀。。在此谢谢老师的辛劳。
我在学习5.2章节的时候遇到了一个问题,LBR的源代码我是直接下载的源代码,编译以后放在相应目录下运行出现以下结果
我的CPU是Core2 Duo CPU,我想这个问题是不是因为我的CPU和书上演示的CPU有些不一样,但是我看了书上介绍的Core微框架应该是差不多的吧,
所以实在不解到此来问问老师,先谢谢了。
lkd> !lbr.lbr
Access LBR (Last Branch Recording) registers of IA-32 CPU.
Version 1.0.0.2 by Raymond
MSR_DEBUGCTLB=3
LBR bit is cleared now.
MSR_LASTBRANCH_TOS=1
MSR_LASTBRANCH_1: [00000000] +0
MSR_LASTBRANCH_1: [8068b561] nt!KdpSysWriteMsr+1c
MSR_LASTBRANCH_0: [00000000] +0
MSR_LASTBRANCH_0: [8068b4fe] nt!KdpSysReadMsr+14
MSR_LASTBRANCH_7: [00000000] +0
MSR_LASTBRANCH_7: [00000000] +0
MSR_LASTBRANCH_6: [00000000] +0
MSR_LASTBRANCH_6: [00000000] +0
MSR_LASTBRANCH_5: [00000000] +0
MSR_LASTBRANCH_5: [00000000] +0
MSR_LASTBRANCH_4: [00000000] +0
MSR_LASTBRANCH_4: [00000000] +0
MSR_LASTBRANCH_3: [00000000] +0
MSR_LASTBRANCH_3: [8068b4fe] nt!KdpSysReadMsr+14
MSR_LASTBRANCH_2: [00000000] +0
MSR_LASTBRANCH_2: [8068b4fe] nt!KdpSysReadMsr+14
LBR bit is set now.
lkd> u nt!kdpSysWriteMsr la
nt!KdpSysWriteMsr:
8068b545 6a08            push    8
8068b547 6848f15280      push    offset nt!RamdiskBootDiskGuid+0x74 (8052f148)
8068b54c e85289e5ff      call    nt!_SEH_prolog (804e3ea3)
8068b551 33f6            xor     esi,esi
8068b553 8975fc          mov     dword ptr [ebp-4],esi
8068b556 8b450c          mov     eax,dword ptr [ebp+0Ch]
8068b559 ff7004          push    dword ptr [eax+4]
8068b55c ff30            push    dword ptr [eax]
8068b55e ff7508          push    dword ptr [ebp+8]
8068b561 e88f7be8ff      call    nt!WRMSR (805130f5)


IP 地址: 已记录   报告
   2012-02-23, 13:01 下午
Raymond 离线,最后访问时间: 2020/7/3 3:40:25 格蠹老雷

发帖数前10位
注册: 2005-12-19
发 贴: 1,303
Re: 请教一个关于5.2章 LBR栈的问题
Reply Quote

多谢!的确是因为型号的不同,LBR栈的格式和位置有变化。正在写第二版,会把这个例子好好更新一下,新版本一旦完成就会先放到网站上


IP 地址: 已记录   报告
高端调试 » 图书 » 《软件调试》答疑 » Re: 请教一个关于5.2章 LBR栈的问题

 
Legal Notice Privacy Statement Corporate Governance Corporate Governance
(C)2004-2020 ADVDBG.ORG All Rights Reserved.