层析法的原理和分类:BSS段,数据段,代码段,堆内存和栈 - 东海的日志 - 网易博客
来源:百度文库 编辑:中财网 时间:2024/05/08 14:18:58
BSS段,数据段,代码段,堆内存和栈
C/C++ 2009-08-04 10:21:38 阅读193 评论0 字号:大中小 订阅
转自:http://hi.baidu.com/%C6%BF%D6%D0%B5%C4%C5%AE%CE%D7/blog/item/5043d08e741075f3503d922c.html
ld 时把所有的目标文件的代码段组合成一个代码段,把所有的数据段组合成一个数据段.
############################################################################
BSS段:BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域。BSS是英文Block Started by Symbol的简称。BSS段属于静态内存分配。
数据段:数据段(da
代码段:代码段(co
栈(stack):栈又称堆栈, 是用户存放程序临时创建的局部变量,也就是说我们函数括弧“{}”中定义的变量(但不包括static声明的变量,static意味着在数据段中存放变量)。除此以外,在函数被调用时,其参数也会被压入发起调用的进程栈中,并且待到调用结束后,函数的返回值也会被存放回栈中。由于栈的先进后出特点,所以栈特别方便用来保存/恢复调用现场。从这个意义上讲,我们可以把堆栈看成一个寄存、交换临时数据的内存区。