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

Windows内核调试

帖子发起人: 阿木   发起时间: 2010-08-03 23:00 下午   回复: 2

Print Search
帖子排序:    
   2010-08-03, 23:00 下午
mimonglin 离线,最后访问时间: 2010/8/5 14:52:36 阿木

发帖数前500位
注册: 2010-08-03
发 贴: 2
请教关于《软件调试》中从虚拟地址解析物理地址的问题。谢谢。
Reply Quote
按照书上的步骤,通过虚拟地址查看内容,正常,dbg输出如下:
0:002> x calc!g*
01014f08 calc!ghwndTimeOutDlg = <no type information>
01014d9c calc!g_fHighContrast = <no type information>
0100514d calc!GetKeyColor = <no type information>
01014ef8 calc!gfExiting = <no type information>
0100518d calc!GetHelpID = <no type information>
01014c70 calc!ghnoPrecNum = <no type information>
01014c08 calc!ghnoParNum = <no type information>
01014038 calc!gszSep = <no type information>
01014eec calc!ghcurOld = <no type information>
01014d38 calc!g_ahnoChopNumbers = <no type information>
01014f00 calc!ghCalcDone = <no type information>
01014db0 calc!gpszNum = <no type information>
01014f0c calc!gnPendingError = <no type information>
01014000 calc!gnDecGrouping = <no type information>
01014dc0 calc!gcio = <no type information>
01014d98 calc!ghnoLastNum = <no type information>
01014f04 calc!ghDogThread = <no type information>
01014d80 calc!g_hDecMenu = <no type information>
01014f48 calc!gbinexact = <no type information>
01014d7c calc!g_hHexMenu = <no type information>
01014efc calc!ghCalcStart = <no type information>
01014da0 calc!g_fLayoutRTL = <no type information>
01014db8 calc!gbRecord = <no type information>
010149d8 calc!gcIntDigits = <no type information>
01014d6c calc!g_hwndDlg = <no type information>
01014d4c calc!gbUseSep = <no type information>
01014d94 calc!ghnoMem = <no type information>
010044b4 calc!GroupDigits = <no type information>
01014f4c calc!gllfact = <no type information>
01014d90 calc!ghnoNum = <no type information>
01014064 calc!gldPrevious = <no type information>
0:002> dd 01014db0
01014db0  000bf898 00000000 00000001 00000000
01014dc0  00000000 ffffffff 00000000 00000000
01014dd0  00000009 00320031 00340033 00360035
01014de0  00380037 00000039 00000000 00000000
01014df0  00000000 00000000 00000000 00000000
01014e00  00000000 00000000 00000000 00000000
01014e10  00000000 00000000 00000000 00000000
01014e20  00000000 00000000 00000000 00000000
0:002> dd 000bf898
000bf898  00320031 00340033 00360035 00380037
000bf8a8  002e0039 00000000 00000000 00000000
000bf8b8  00050002 00080174 000bf8d0 000bf8f0
000bf8c8  00020004 000c017a ffffffff 00000001
000bf8d8  00000000 00000001 00000000 00000000
000bf8e8  00040005 0008017e 00000001 00000004
000bf8f8  00000000 00000000 0b59df02 35b5056e
000bf908  00002771 00000000 00050002 00080141
0:002> du 000bf898
000bf898  "123456789."
0:002> .formats 000bf898
Evaluate expression:
  Hex:     000bf898
  Decimal: 784536
  Octal:   00002774230
  Binary:  00000000 00001011 11111000 10011000
  Chars:   ....
  Time:    Sat Jan 10 09:55:36 1970
  Float:   low 1.09937e-039 high 0
  Double:  3.87612e-318

然后另起dbg进行本地内核调试,却是无法查看页目录表项,这是为什么?dbg输出如下:
******************************************************************************************
PROCESS 886d7da0  SessionId: 0  Cid: 0c78    Peb: 7ffda000  ParentCid: 0278
    DirBase: 0a580460  ObjectTable: e3f1c458  HandleCount:  51.
    Image: calc.exe
******************************************************************************************

lkd> !dd 0a580460
# a580460 330a3801 00000000 45d64801 00000000
# a580470 2d065801 00000000 27922801 00000000
# a580480 76181801 00000000 65f42801 00000000
# a580490 724c3801 00000000 79d40801 00000000
# a5804a0 7b8a6801 00000000 7af27801 00000000
# a5804b0 7a828801 00000000 7bc65801 00000000
# a5804c0 63ad8801 00000000 41659801 00000000
# a5804d0 49d9a801 00000000 71397801 00000000

!dd出来的内容,为什么中间会有00000000的呢?而不像书上演示的,从330a3801解析不出物理地址。

请大家指教。谢谢。

IP 地址: 已记录   报告
   2010-08-04, 09:24 上午
Raymond 离线,最后访问时间: 2020/7/3 3:40:25 格蠹老雷

发帖数前10位
注册: 2005-12-19
发 贴: 1,303
Re: 请教关于《软件调试》中从虚拟地址解析物理地址的问题。谢谢。
Reply Quote
应该是因为你的系统启用了PAE,请参考下面的文章:
http://advdbg.org/blogs/advdbg_system/articles/627.aspx


IP 地址: 已记录   报告
   2010-08-05, 23:18 下午
mimonglin 离线,最后访问时间: 2010/8/5 14:52:36 阿木

发帖数前500位
注册: 2010-08-03
发 贴: 2
Re: 请教关于《软件调试》中从虚拟地址解析物理地址的问题。谢谢。
Reply Quote
查看到了,谢谢。
IP 地址: 已记录   报告
高端调试 » 软件调试 » Windows内核调试 » 请教关于《软件调试》中从虚拟地址解析物理地址的问题。谢谢。

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