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

《软件调试》答疑

帖子发起人: 阿福   发起时间: 2008-07-05 22:48 下午   回复: 8

Print Search
帖子排序:    
   2008-07-05, 22:48 下午
fuzigege 离线,最后访问时间: 2008/7/5 22:32:31 阿福

发帖数前500位
注册: 2008-07-05
发 贴: 3
勘误求证
Reply Quote
第202页,9.3.3节,倒数第二自然段倒数第三行开始:
原文:而SuspendThread()和ResumeThread() API(对应与NtSuspendThread内核服务和KeSuspendThread)操作的是SuspendCount字段。
疑问:这里的KeSuspendThread是不是应该是NtSuspendThread。


第205页,倒数第二自然段开头一行:
原文:在调试器处理好调试事件后,它会通过ContinueDebugEvent API间接调用间接调用或直接调用nt!NtDebugContinue内核服务。
这里:两个“间接调用”好像多了一个。

暂时只看到这里!


IP 地址: 已记录   报告
   2008-07-06, 11:27 上午
Raymond 离线,最后访问时间: 2020/7/3 3:40:25 格蠹老雷

发帖数前10位
注册: 2005-12-19
发 贴: 1,303
Re: 勘误求证
Reply Quote
关于问题1,你的疑问是不是想表达为:“这里的KeSuspendThread是不是应该是NtResumeThread”?如果这样,那么这样修改是有道理的。原文的含义是,SuspendThread API对应的是NtSuspendThread内核服务,而NtSuspendThread内核服务内部实际上调用的是内核函数KeSuspendThread,其中的Ke是内核(狭义的内核)函数的前缀。
第2处的确如你说,是多了一个,我会将其放入勘误表中。
多谢你的意见。

IP 地址: 已记录   报告
   2008-07-07, 23:13 下午
fuzigege 离线,最后访问时间: 2008/7/5 22:32:31 阿福

发帖数前500位
注册: 2008-07-05
发 贴: 3
Re: 勘误求证
Reply Quote
哦,我懂了!

原文意思是SuspendThread调用NtSuspendThread内核函数,NtSuspendThread又继续调用KeSuspendThread函数。
     对应的 ResumeThread 调用NtResumeThread 内核函数, NtResumeThread 又继续调用KeResumeThread 函数。

看到251页,倒数第一段。 原文“如果当前进程不再被调试,那么进程的初始化函数不会调用DbgBreadkPoint"。

根据前文的意思我觉得”不再被调试“是别字误笔,“不再”应该是”不在”.



IP 地址: 已记录   报告
   2008-07-08, 22:36 下午
Raymond 离线,最后访问时间: 2020/7/3 3:40:25 格蠹老雷

发帖数前10位
注册: 2005-12-19
发 贴: 1,303
Re: 勘误求证
Reply Quote
对的,这里是别字,抱歉,我会将其加到勘误列表中。
IP 地址: 已记录   报告
   2008-07-11, 00:35 上午
fuzigege 离线,最后访问时间: 2008/7/5 22:32:31 阿福

发帖数前500位
注册: 2008-07-05
发 贴: 3
Re: 勘误求证
Reply Quote
第332页,第二自然段,
原文”新的对话框增加了Send Erorr Report(发送错误提示)按钮,“
这里将Error拼写成了Erorr,这个段后面还有一处相同的错误。

第588页,倒数第三行,
原文”其中7c8100327是返回地址,000007c0是进程句柄(参数1)”
这里的000007c0印错了,应该是000007bc
IP 地址: 已记录   报告
   2008-07-16, 21:33 下午
Raymond 离线,最后访问时间: 2020/7/3 3:40:25 格蠹老雷

发帖数前10位
注册: 2005-12-19
发 贴: 1,303
Re: 勘误求证
Reply Quote
多谢,都已经放在勘误中。
IP 地址: 已记录   报告
   2008-07-28, 22:38 下午
skyworth 离线,最后访问时间: 2009/12/15 16:03:09 skyworth

发帖数前25位
注册: 2008-06-07
发 贴: 55
Re: 勘误求证
Reply Quote
关于勘误的勘误。
25 8.3.3 180 表8-2下面一段的最后一句话 SYSENTER_ESP_MSR的值是8053cad0 SYSENTER_ESP_MSR的值是8053cad0

第二个SYSENTER_ESP_MSR应该是SYSENTER_EIP_MSR吧?请证实。
IP 地址: 已记录   报告
   2008-07-28, 23:05 下午
Raymond 离线,最后访问时间: 2020/7/3 3:40:25 格蠹老雷

发帖数前10位
注册: 2005-12-19
发 贴: 1,303
Re: 勘误求证
Reply Quote
skyworth: 你说的对,我在做勘误时,忘记将后面一个改正过来了,现在好了,多谢。
IP 地址: 已记录   报告
   2008-07-29, 20:39 下午
skyworth 离线,最后访问时间: 2009/12/15 16:03:09 skyworth

发帖数前25位
注册: 2008-06-07
发 贴: 55
Re: 勘误求证
Reply Quote
^_^
IP 地址: 已记录   报告
高端调试 » 图书 » 《软件调试》答疑 » Re: 勘误求证

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