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

WinDbg

帖子发起人: Eugen   发起时间: 2017-06-04 23:39 下午   回复: 2

Print Search
帖子排序:    
   2017-06-04, 23:39 下午
xiaoxiaobian 离线,最后访问时间: 2020/10/11 11:47:32 Eugen

发帖数前500位
注册: 2016-10-27
发 贴: 2
请教张老师关于windbg切换上下文的疑惑
Reply Quote
张老师,你好:
最近我在看<软件调试>的第30章,对书中进程上下文和线程上下文的概念有点疑惑,希望你能帮助我,谢谢。

1.书中,你提到的进程上下文是不是指进程的页目录表?

2.当用.process切换进程上下文后,是不是仅仅改变了Cr3的值,所以可以读取目标进程的进程空间的内容,但并没有切换到目标进程?这个命令相当于只做了KeAttachProcess,并没有做KeSwapThread?

3.如果运行.process /i /p命令,是不是既做了改变寄存器Cr3的值又做了切换进程的动作?

4.寄存器上下文,是不是就是线程调用KiFrameToContext时保存在线程栈中的Context结构?windbg的.thread命令是不是相当于调用了KeSetThreadContext/KeGetThreadContext两个函数?



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

发帖数前10位
注册: 2005-12-19
发 贴: 1,303
Re: 请教张老师关于windbg切换上下文的疑惑
Reply Quote
在客栈,没有书在手边,问1,相关但不确切, 问2, 建议跟踪一下调试器看 问3,这是依赖目标系统的,是确实切换了进程, 问4, 有关但不确切

上下文是个不精确的词,范围很广,要看具体语境


IP 地址: 已记录   报告
   2017-06-13, 22:40 下午
xiaoxiaobian 离线,最后访问时间: 2020/10/11 11:47:32 Eugen

发帖数前500位
注册: 2016-10-27
发 贴: 2
Re: 请教张老师关于windbg切换上下文的疑惑
Reply Quote
张老师:
感谢你在百忙之中回答我的问题。我调试了一把问题2和3,发现.process 命令不带参数/i,确实不会修改cr3。既然不能切换进程,不知道.process EPROCESS这个命令背后做了啥了...

IP 地址: 已记录   报告
高端调试 » 软件调试 » WinDbg » Re: 请教张老师关于windbg切换上下文的疑惑

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