WinDbg命令系统
WinDbg命令系统
WinDbug三种命令
WinDbug是一个强大的调试器,大部分很多功能都是通过命令来实现的,命令在命令窗口中输入,主要分为以下三类:
标准命令
标准命令提供了调试器的基本功能,大部分都是一个字母,共有130多个命令
类型 代表命令 程序控制类 g系列 t系列 p系列 内存查看修改类 d系列 e系列 s等 断点设置类 b系列 观察堆栈 k系列 反汇编命令 u系列 其他命令 x q l s等 在命令输入框输入?可以看到一些命令的简介
注意事项:
只用在程序在程序暂停时才能输入命令
直接回车可以重复上一条命令
按上下方向键可以浏览以前输入过的命令
当命令提示框为*BUSY* 的时候,无法立即执行命令
元命令
元命令作为标准命令的一个补充也被内置在了WinDbg中,其特点是一个“ . ”开头 ,通常是一个单词:
例:.symopt .sympathy .asm
.restart .reboot
输入.help可以查看到元命令以及他们的帮助说明
扩展命令
扩展命令通常用于实现特定调试的一些命令。他们实现与DLL中并非WinDbg内置,使用时一般以!开头,通常是一个单词。
扩展命令存在的DLL被称之为扩展模块,使用.chain命令可以列出所有的扩展模块,大部分模块都有help命令来显示这个模块的基本信息以及所含有的命令。
常用基本命令
| 命令 | 功能 |
|---|---|
| lm | 查看当前模块及符号加载情况 |
| .reload | 刷新符号路径,重新载入符号 |
| ld | 加载某一个模块的符号 |
| .restart | 重新开始调试 |
| .detach | 分离调试 |
| q | 退出调试 |
WinDbg命令系统的更多相关文章
- 透过WinDBG的视角看String
摘要 : 最近在博客园里面看到有人在讨论 C# String的一些特性. 大部分情况下是从CODING的角度来讨论String. 本人觉得非常好奇, 在运行时态, String是如何与这些特性联系上的 ...
- Windbg Extension NetExt 使用指南 【3】 ---- 挖掘你想要的数据 Managed Heap
摘要 : NetExt中有两个比较常用的命令可以用来分析heap上面的对象. 一个是!wheap, 另外一个是!windex. !wheap 这个命令可以用于打印出heap structure信息. ...
- Windbg Extension NetExt 使用指南 【2】 ---- NetExt 的基本命令介绍
摘要 : 本章节介绍NetExt常用的命令. 并且对SOS进行一些对比. NetExt的帮助 要想玩好NetExt, 入门就得看帮助. 看NetExt的帮助可以调用!whelp 命令. 这样hi列举出 ...
- Windbg Extension NetExt 使用指南 【1】 ---- NetExt 介绍
摘要 : 在使用WINDBG做debugging的时候,需要一个好的工具帮助进行数据分析. 最常见的extension包括SOS, PSSCOR. NetExt则是另外一种提供了丰富命令功能的deb ...
- Windbg跟踪临界区的BUG
最近跟踪了一个程序的界面卡死问题,该卡死偶尔出现,在抓到一次dump后用windbg载入分析,打印出函数调用堆栈后,一眼可以看出是临界区死锁了. 代码: 0:000:x86> kb ChildE ...
- 使用Windbg在XP下Heap追踪失败的原因
1.故事背景 最近同事的代码中碰到一个bug会导致奔溃的bug,从dump上看是由于某个对象的堆内存指针被释放了,但代码仍调用了该对象指针的虚函数,从而引起内存访问违法崩溃,由于该类被大量使 ...
- Windbg调试命令详解
作者:张佩][原文:http://www.yiiyee.cn/Blog] 1. 概述 用户成功安装微软Windows调试工具集后,能够在安装目录下发现四个调试器程序,分别是:cdb.exe.ntsd. ...
- windbg运行
运行起来会提示windbg is running. BUSY 这个是正常运行的状态,只有发生异常,或者被指定断点,才会中断.
- Windbg使用简明指南
第一章 准备 1.1. 环境配置 _NT_DEBUGGER_EXTENSION_PATH=C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 _NT_SY ...
随机推荐
- ping通谷歌后发送QQ邮件通知
前言 国庆期间,据说是为了防止有人在重大节日发表不正当言论,很多可以kxsw的ip都被封了,可是什么时候才会解封呢,不能没事就去ping一下吧,所以我写了个定时任务,定时ping谷歌服务器,如果p ...
- Laravel Entrust 权限管理扩展包的使用笔记
简介 Entrust 是一个简洁而灵活的基于角色进行权限管理的 Laravel 扩展包.针对 Laravel 5,官方推荐的安装版本是 5.2.x-dev.它的详细使用方法请查看 Entrust Gi ...
- 【linux】jdk安装及环境变量配置
登录linux后,切换目录到 /usr/local cd /user/local 在/usr/local目录新建文件夹java用于存放jdk文件 mkdir java 在文件夹java中下载jdk文件 ...
- day 23
目录 面向对象总复习 面向对象总复习 面向过程编程思想: 核心是过程,过程指的是做事情的步骤,即先干什么再干什么. 基于该编程思想编程,就好比一条流水线,一种机械式的思维方式. 面向对象编程思 ...
- Tomcat部署项目的三个方法
所需软件安装 要想在Tomcat中部署项目前提是先要搭建好Tomcat,搭建Tomcat就离不开以下软件包的安装配置,本次演示使用Linux平台 1.JDK软件包 JDK是一切java应用程序的基础, ...
- 无人机基于Matlab/Simulink的模型开发(连载一)
"一切可以被控制的对象,都需要被数学量化" 这是笔者从事多年研发工作得出的道理,无论是车辆控制,机器人控制,飞机控制,还是无人机控制,所有和机械运动相关的控制,如果不能被很好的数学 ...
- Java并发编程总结(一)Syncronized解析
Syncronized解析 作用: )确保线程互斥的访问同步代码 )保证共享变量的修改能够及时可见 )有效解决重排序问题. 用法: )修饰普通方法(锁是当前实例对象) )修饰静态方法(锁是当前对象的C ...
- unittest介绍
unittest框架是python中一个标准的库中的一个模块,该模块包括许多的类如 test case类.test suit类.texttest runner类.texttest resuite类.t ...
- 机器学习回顾篇(7):决策树算法(ID3、C4.5)
.caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...
- 单调队列与DP
算是一个总结吧! 先来一个模板: TYVJ 1305 最大子序和 题目描述 输入一个长度为n的整数序列,从中找出一段不超过M的连续子序列,使得整个序列的和最大. 例如 1,-3,5,1,-2,3 当m ...