运行时数据结构

运行时数据结构

[段]

文本段也称为代码段;

数据段包含经过初始化的全局和静态变量以及它们的值;

BSS(block started by symbol)段包含未初始化的全局变量和静态变量;

堆栈段(stack)包含局部变量、临时数据、传递到函数中的参数等,运行时产生;

堆(heap)用于动态分配的内存(malloc),平常所看到的段错误和内存泄露就是发生在堆里的;

 

[可执行文件的三个段]

cjok@ubuntu:~/learn/c$ size a.out
  text       data       bss       dec       hex   filename
  1017      264        8     1289      509  a.out

 

[段与代码对照关系]

 

[运行时可执行文件中的段在内存中的布局]

 

if you have any questions, please contact me<cjok.liao@gmail.com> or leave a comment, we will exchange views, it's good for us, so great!


 

阅读更多
个人分类: C/C++
上一篇简单字符设备驱动和自动创建设备文件
下一篇一些C语言题
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭