我怎样才能用GDB检查堆栈框架?
现在我已经使用GDB反汇编一个二进制文件,并检查出不同的寄存器和什么。 有一个简单的命令来检查堆栈上的一切吗? 这可以限制在一个function的一切?
对于当前的堆栈帧:
- 信息框架列出了有关框架的一般信息(在内存中启动的东西等)
- info参数列出了函数的参数
- info locals列出存储在框架中的局部variables
您可以使用x/10x $sp
查看堆栈的内容
这将打印堆栈的前10个元素。
-
bt
(或backtrace
)会给你一个调用堆栈。 -
frame <args>
会给你关于栈中特定帧的信息。 -
info locals
可以给你有关堆栈上任何局部variables的信息。