在WinDBG中查看调用栈的命令

简介:

命令

==========

k

k命令显示的是一定数量的栈帧, 其中帧的数量是由.kframes命令来控制的, 默认值是256。

image

 

kp 5

显示调用栈中前5个函数以及他们的参数.

 

kb 5

显示调用栈中前五个函数以及他们的前三个参数.

 

kf 5

显示在调用栈中五个函数所使用的栈的大小.

每个栈帧所占的空间使用量的计算方法是: 将当前函数的栈基指针与在函数中调用的任何一个函数栈基指针相减.

 

举例:

image

 

手动构造栈的实践- 如何手工构造调用栈

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

首先用几幅图说明一下栈的特点, 帮助大家理解.

 

1. 栈向低地址增长.

2. 向栈中压入数据, 栈中的情况如图.

3. 有函数调用的栈中的情况.

 

注意, 手工构造栈的时候, 我们需要利用的是上面图中显示的一个模式:

在内存中的一系列的值是可以被识别出来的, 这些值表示当前站中的某个地址, 并且在这些值之后是一个可执行的地址.

 

image

 

参考资料:

<<AWD>>


目录
相关文章
|
8月前
|
NoSQL
GDB调试学习(二):断点
GDB调试学习(二):断点
86 0
|
8月前
|
NoSQL 小程序 C语言
GDB调试学习(四):段错误
GDB调试学习(四):段错误
173 0
|
存储 NoSQL C语言
gdb调试常见命令详细总结
gdb调试常见命令详细总结
524 0
【Linux】直接打印堆栈调试信息
【Linux】直接打印堆栈调试信息
【Linux】直接打印堆栈调试信息
|
NoSQL Unix Shell
gdb调试命令的使用及总结
来源:http://www.jb51.net/article/36393.htm 参考:http://www.cnblogs.com/hankers/archive/2012/12/07/2806836.html 参考:http://wiki.ubuntu.org.cn/%E7%94%A8GDB%E8%B0%83%E8%AF%95%E7%A8%8B%E5%BA%8F 100个gdb技
8362 0
|
存储 Java .NET
在WinDBG中查看调用栈的命令
命令 ========== k k命令显示的是一定数量的栈帧, 其中帧的数量是由.kframes命令来控制的, 默认值是256。   kp 5 显示调用栈中前5个函数以及他们的参数.   kb 5 显示调用栈中前五个函数以及他们的前三个参数.
920 0
|
Windows
Windbg内核调试之四: Dump文件分析
Dump 文件分析很大程度上就是分析蓝屏产生的原因。这种系统级的错误算是Windows提示错误中比较严重的一种(更严重的还有启动黑屏等硬件或软件兼容性错误等等)。说它是比较严重,是因为毕竟Windows还提供了dump文件给用户分析,至少能比较容易的找到错误的原因。
1651 0
|
Windows
windbg分析内存泄露
内存泄漏 umdh
1599 0
|
C++ API 数据建模
Windbg查看调用堆栈(k*)
https://www.52pojie.cn/thread-664189-1-1.html       无论是分析程序崩溃原因,还是解决程序hang问题,我们最常查看的就是程序调用堆栈。
1900 0