WinDBG命令概览(上) - 标准命令

WinDBG的大多数功能是以命令方式工作的, 本系列将介绍WinDBG的三类命令, 标准命令, 元命令和扩展命令.

标准命令

===============

标准命令用来提供适用于所有调试目标的基本调试功能.

所有基本命令都是实现在WinDBG内部的, 执行这些命令时不需要加载任何扩展模块. 大多数标准命令是一两个字符或者符号, 只有version等少数命令除外. 标准命令的第一个字符是不分大小写的, 第二个字符可能区分大小写. 迄今为止, WinDBG调试器共实现了130多条标准命令, 分为60多个系列. 为了便于记忆, 可以根据功能将标准命令归纳为如下18个子类.

控制调试目标执行

功能 命令 描述/助记 补充信息
恢复运行 g Go ~123g~#g~*g
跟踪执行 t Trace  
单步执行 p Step  
追踪监视 wt Trace and Watch Data  

寄存器相关

功能 命令 描述/助记 补充信息
观察和修改通用寄存器 r Registers  
读写MSR寄存器 rdmsr和wrmsr Read MSR and Write MSR  
设置寄存器显示掩码 rm Register Mask  

IO端口读写

功能 命令 描述/助记
读IO端口 ib, iw, id Input from port (byte, word, double word)
写IO端口 ob, ow, od Output to port (byte, word, double word)

内存控制

功能 命令 描述/助记 补充信息
观察内存 d系列 Display Memory d, da, db, dc, dd, dD, df, dp, dq, du, dw, dW, dyb, dyd
编辑内存 e系列 Enter Values e, ea, eb, ed, eD, ef, ep, eq, eu, ew, eza, ezu
搜索内存 s Search Memory sb, sw, sd, sq, sa, su

功能 命令 描述/助记 补充信息
观察栈 k系列 Display Stack Backtrace k, kb, kc, kd, kp, kP, kv

设置维护断点

功能 命令 描述/助记
软件断点 bp, bu, bm Set Breakpoint, Set Unresolved Breakpoint, Set Symbol Breakpoint
硬件断点 ba Break on Access
管理断点 bl Breakpoint List
清除,禁止,重新启用断点 bc, bd, be Breakpoint Clear, Breakpoint Disable, Breakpoint Enable

线程

功能 命令 描述/助记
显示控制线程 ~ Thread Status

进程

功能 命令 描述/助记
显示进程 | Process Status

表达式

功能 命令 描述/助记
评估表达式 ? Evaluate Expression
评估C++表达式 ?? Evaluate C++ Expression

汇编, 反汇编

功能 命令 描述/助记
汇编 a Assemble
反汇编 u Unassemble

功能 命令 描述/助记
显示段的选择子 dg Display Selector: shows the segment descriptor for the specified selector

执行命令文件

功能 命令 描述/助记 补充信息
运行命令脚本文件 $ Run Script File $<, $><, $$<, $$><, $$>a<

配置命令

功能 命令 描述/助记 补充信息
异常发生或者某事件发生时debuger的处理方式 sx系列 Set Exceptions sx, sxd, sxe, sxi, sxn, sxr, sx-
启用与禁止静默模式 sq Set Quiet Mode

sq
sq{e|d}

设置内核debugging选项 so Set Kernel Debugging Options  
设置符号后缀 ss Set Symbol Suffix ss [a|w|n]

版本与系统信息

功能 命令 描述/助记
显示调试器和调试目标版本 version Show Debugger Version
显示调试目标所在系统的信息 vertarget Show Target Computer Version

检查符号

功能 命令 描述/助记
检查符号 x Examine Symbols

源程序

功能 命令 描述/助记 补充信息
控制和显示源程序 ls系列 List Source Lines ls, lsa, lsp, lsc, lsf

调试符号

功能 命令 描述/助记
加载调试符号 ld Load Symbols
搜索相邻符号 ln List Nearest Symbols
显示模块列表 lm List Loaded Modules

调试会话

功能 命令 描述/助记
结束调试会话 q Quit
结束远程调试 qq Quit
结束调试会话并分离调试目标 qd Quit and Detach

在命令编辑框中输入一个问号(?), 可以显示出主要的标准命令和每个命令的简单介绍.

摘自:<软件调试> 张银奎

posted on 2011-12-26 16:33 方程 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/Fido/archive/2011/12/26/2302256.html

WinDBG命令概览(上) - 标准命令相关推荐

  1. arp命令linux上,arp命令 - Linux命令大全 | linux教程

    arp命令的英文全拼"Address Resolution Protocol" .该命令用于操作主机的arp缓存,它可以显示arp缓存中的所有条目.删除指定的条目或者添加静态的ip ...

  2. linux shell 网页,Linux上shell命令

    Linux上shell命令 Linux上shell命令 日期:2014-05-16 浏览次数:20328 次 Linux下shell命令 Linux下shell命令 adduser 创建新的用户账户 ...

  3. 【每天一个 Linux 命令】网络相关命令(ifconfig、route、ping、traceroute、netstat、ss、telnet、rcp、scp)

    文章目录 ifconfig命令 ifconfig命令使用示例 route命令语法 route命令使用示例 ping命令语法 ping命令使用示例 traceroute命令语法 traceroute命令 ...

  4. Linux和Windows命令行中使用命令的输出(删除几天前的日志)

    如果我们需要在命令行中使用命令的结果,需要怎么做? 很常见的一种情况是我们需要当前工作目录的路径.在Linux下,可用这样: $ echo `pwd` $ ./mdu `pwd` 在Windows下面 ...

  5. scp linux 命令加密码,scp命令_Linux scp 命令用法详解:加密的方式在本地主机和远程主机之间复制文件...

    scp命令用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器硬盘变为只读read onl ...

  6. WinDBG命令概览

    转自: http://www.cnblogs.com/awpatp/ WinDBG的大多数功能是以命令方式工作的, 本系列将介绍WinDBG的三类命令, 标准命令, 元命令和扩展命令. ======= ...

  7. Go 学习笔记(37)— 标准命令(go build 跨平台编译、交叉编译、go clean、go run、go fmt、go install、go get)

    1. 标准命令简述 Go 本身包含来大量用于处理 Go 程序的命令和工具. 命令 作用 build 用于编译指定的代码包或 Go 语言源码文件.命令源码文件会被编译成可执行文件,并存放到命令执行的目录 ...

  8. Go 学习笔记(2)— 安装目录、工作区、源码文件和标准命令

    GOROOT: Go 语言安装根目录的路径,也就是 GO 语言的安装路径. GOPATH: 若干工作区目录的路径.是我们自己定义的工作空间.在 Go Module 模式之前非常重要,现在基本上用来存放 ...

  9. shell编程:定义简单标准命令集

    shell是用户操作接口的意思,操作系统运行起来后都会给用户提供一个操作界面,这个界面就叫shell,用户可以通过shell来调用操作系统内部的复杂实现,而shell编程就是在shell层次上进行编程 ...

最新文章

  1. ul li设置横排,并除去li前的圆点
  2. python pil_使用Python的PIL模块来进行图片对比
  3. 地域和地方的区别_商标、品牌、LOGO,三者区别在哪里?
  4. linux vnc服务重启,CentOS下配置VNCServer,重启服务仍然生效
  5. Pyomo+GLPK使用
  6. JAVA四种基本排序总结
  7. 【渝粤题库】广东开放大学 物业财税管理基础 形成性考核 (2)
  8. MATLAB可以打开gms文件吗,gms文件扩展名,gms文件怎么打开?
  9. 三相逆变器双pi控制器参数如何调节_光伏逆变器短路特性简析
  10. 从英伟达 vs ATI的芯片大战看GPU前世今生
  11. 使用ZLIB对datasetProvider.data数据包进行压缩传输的测试
  12. linux 汉化记述
  13. HP M1136打印机 Mac驱动程序分享
  14. 构建会员运营管理系统 帮助零售企业数字化转型
  15. 使用spss求标准化的线性回归方程
  16. 硬盘格式化了怎么恢复数据
  17. 【惊了】迅雷下载速度竟然比不上虚拟机中的下载速度
  18. 计算机体系结构的主要原理,《计算机组成原理》计算机体系结构.pdf
  19. 串口传输速率为9600bps意味着每分钟最多可传送多少个ASCII码字符
  20. 终于可以携号转网,三大运营商做了10年,技术难点到底在哪?

热门文章

  1. 【小家Java】Java环境变量(Env)和系统属性(Property)详解---工具文章
  2. Gorgon黑客组织再显新招:通过在线网盘发起“三重奏”攻击
  3. 可以翻译ppt文档的软件有哪些?
  4. Java字符串反转以及数组集合转换的方法
  5. 网易云音乐“内外人格测试”思考
  6. OpenGL概述(核心模式与立即模式、扩展、OpenGL中的对象)
  7. OpenGL学习---1.1 OpenGL基本介绍
  8. 管理经济学【十二】之 企业产品定价实践
  9. 软考报名已全部截止,疫情之下,这些要求不满足不得进入考场
  10. 解密区块链:当你最需要信任的时候,它会为你建立信任