1 什么是frame pointer

frame pointer指向本函数栈帧顶,通过它可以找到本函数在进程栈中的位置。有专门的寄存器保存该值。

2 frame pointer有什么用

主要是backtrace用,每个函数的frame pointer保存在其后调用的函数的栈帧中。因此可以得到调用层级里面的每个函数的栈帧,从而可以打印出back trace。

3 程序执行的过程中为什么可以不要frame pointer

在汇编层面的每个函数自己内部就完成了push和pop栈的操作,每个函数知道自己所使用的这段栈的栈结构,在开始执行的时候把变量和常用寄存器push进去,在执行完了后,pop出来。因此程序执行过程中是不需要frame pointer的。

最新文章

  1. C函数
  2. YUSE_DOWN-批下载
  3. (转)基于OWIN WebAPI 使用OAuth授权服务【客户端模式(Client Credentials Grant)】
  4. 0728关于html的几个基础知识点
  5. Android优化——UI优化(一)优化布局层次
  6. 第三次阅读赵炯博士的《linux内核代码完全注释》:序
  7. How to install VXDIAG Honda, Toyota and JLR SDD software
  8. ASP.NET页面生命周期与控件生命周期
  9. canvas 渐变
  10. C++中多重继承构造函数执行顺序
  11. free 命令详解
  12. 你真的了解webview么?
  13. CnPack组件包的安装与使用
  14. when to use reinterpret_cast
  15. 关于nodejs
  16. 【NPM】npm ERR! Unexpected end of JSON input while parsing near '...",'解决方案
  17. .NET学习从入门到精通100+源代码(申明:来源于网络)
  18. MongDB篇,第四章:数据库知识4
  19. Singer 学习二 使用Singer进行gitlab 2 postgres 数据转换
  20. [Spark Core] Spark 实现气温统计

热门文章

  1. Oracle learning note
  2. JAVA基础——设计模式之简单工厂模式
  3. vue中去掉烦人的格式警告(eslint )
  4. 浅谈FFT(快速博立叶变换)&学习笔记
  5. C#基础学习(二)
  6. 【数据库】DML-增删改查-SQL实现
  7. buf.fill()
  8. Win2008 Server MySql安装包详细安装教程
  9. 【Codeforces 492D】Vanya and Computer Game
  10. oracle exp direct 执行机制