博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在WinDBG中查看调用栈的命令
阅读量:5990 次
发布时间:2019-06-20

本文共 410 字,大约阅读时间需要 1 分钟。

命令

==========

k

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

image

 

kp 5

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

 

kb 5

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

 

kf 5

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

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

 

举例:

image

 

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

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

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

 

1. 栈向低地址增长.

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

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

 

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

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

 

image

 

参考资料:

<<AWD>>

转载地址:http://sqnlx.baihongyu.com/

你可能感兴趣的文章
网络资源(6) - EJB视频
查看>>
RTP学习笔记
查看>>
IAR无法调试问题解决
查看>>
QTP的那些事--可重用action(call to existing action)的使用
查看>>
Open-Source performance testing tools(From other site)
查看>>
项目导入报错,之前的环境没问题
查看>>
[算法]浅谈求n范围以内的质数(素数)
查看>>
CentOS安装Oracle官方JRE
查看>>
堆排序
查看>>
GTK+图形化应用程序开发学习笔记(四)—容器、构件
查看>>
spark的一些基本概念和模型
查看>>
Spring MVC之RequestMapping
查看>>
新建类型组对象
查看>>
XML数据转JSON数据
查看>>
(一)—— 使用 vue-cli 搭建项目 vue速成法 一个大佬的。
查看>>
UVALive 3523 Knights of the Round Table 圆桌骑士 (无向图点双连通分量)
查看>>
MyBatis(3)开发dao方法
查看>>
实现自己的.NET Core配置Provider之EF
查看>>
git log tag
查看>>
#从零开始学Swift2.0# No.2 运算符和表达式
查看>>