`

BSS(Block Started by Symbol )

 
阅读更多

可执行程序包括BSS段、数据段、代码段(也称文本段)。

  BSS(Block Started by Symbol)通常是指用来存放程序中未初始化的全局变量和静态变量的一块内存区域。

  注意和数据段的区别,BSS存放的是未初始化的全局变量和静态变量,数据段存放的是初始化后的全局变量和静态变量。

  UNIX下可使用size命令查看可执行文件的段大小信息。如size a.out。

分享到:
评论

相关推荐

    五分钟搞定bss、data和rodata的区别 硬件工程师电路分析物联网模电单片机嵌入式技术.doc

    首先,bss(block started by symbol)是指那些没有初始化的和初始化为0的全局变量和静态变量。bss类型的全局变量只占运行时内存空间,而不占文件空间。另外,在程序初始化时,通常会把bss全局变量全部清零。为了...

    data,bss ,text,小知识

    **BSS段**(Block Started by Symbol)主要用来存放程序中未初始化的全局变量,它属于静态内存分配的一部分。在程序的生命周期中,这部分内存区域会被操作系统初始化为全零状态。 在汇编语言中,BSS段通过特定的段...

    BSS段、数据段、代码段、堆与栈.pdf

    **BSS段**(Block Started by Symbol)是程序中用于存放未初始化的全局变量的一块内存区域。这类变量通常在程序启动时由操作系统自动设置为零值。BSS段的特点如下: - **静态内存分配**:BSS段属于静态内存分配,这...

    C语言不同变量内存区域(堆,栈,代码区,全局区,BSS段)

    5. **BSS段(Block Started by Symbol Segment)** BSS段是为未初始化的全局变量和静态变量预留的内存空间。在程序开始执行时,BSS段的内存被清零或初始化为0。与全局区的区别在于,BSS段不包含任何实际的数据,只...

    你知道bss,data,text,rodata,堆,栈,常量段等区别?.docx

    BSS 段(Block Started by Symbol) BSS 段是程序中未初始化的全局变量的存储区域。BSS 段属于静态内存分配,程序一开始就将其清零。BSS 段的大小在程序运行前就已经确定。在链接脚本中,BSS 段通常使用 `.bss` 段名...

    深入解析C语言中的内存分配相关问题

    BSS是英文Block Started by Symbol的简称 栈区 由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈 堆区 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收 ...

    c语言内存模型

    1、程序代码区:存放函数体...BSS是英文Block Started by Symbol的简称。  3、栈区:由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。  4、堆区:一般由程序员分配释放,若

    bss

    在IT领域,"bss"通常指的是Block Started by Symbol(由符号开始的块)段,这是一个在计算机程序中,特别是操作系统和编译器上下文中使用的术语。BSS段主要存储未初始化或初始化为零的全局变量和静态变量。在程序...

    缓冲区溢出读后感,一个读书报告

    2. **BSS区(Block Started by Symbol)**:未初始化的全局变量和静态变量的存储区域。在程序启动时,这部分内存通常会被清零。 3. **PLT(Procedure Linkage Table)**:用于处理动态链接的表,允许在运行时解析和...

    C语言中的5个段作用[定义].pdf

    三、BSS段(Block Started by Symbol) BSS段存放的是全局未初始化变量、静态未初始化变量。该段的大小是可以动态变化的,具体大小取决于程序的实际情况。 四、栈段(stack segment) 栈段是存放函数的参数值、...

    变量的存储域(通过linux下size命令分析)参照.pdf

    BSS段(Block Started by Symbol Segment)用于存储未初始化的全局变量和静态变量。这些变量在程序启动时会被自动初始化为零或NULL。 堆栈段(Stack)则是函数调用时用来分配临时变量和函数参数的地方。每当函数...

    c++内存到底分几个区

    BSS(Block Started by Symbol)是用于存储未初始化的全局变量和静态变量的区域。这些变量在程序开始运行时默认值为0。BSS段不占用实际的物理内存空间,只有当程序真正运行时才会根据需要分配相应的内存。 - **特点...

    变量的存储域(通过linux下size命令分析).pdf

    - **BSS段(Block Started by Symbol Segment)**:用于存储未初始化的全局变量和静态变量。在程序启动时,这部分内存会被清零。 - **堆栈段(Stack)**:存放函数调用时的局部变量、函数参数和返回地址。堆栈的...

    SS段、数据段、代码段、堆与栈

    BSS段(Block Started by Symbol)主要负责存储未初始化的全局变量,即那些在程序开始执行前没有赋予具体值的变量。这些变量默认被初始化为零。值得注意的是,BSS段属于静态内存分配,这意味着它的内存空间在程序...

    面试题3(带答案)_嵌入式-常用知识&面试题库_大厂面试真题.pdf

    * BSS(Block Started by Symbol):通常是指用来存放程序中未初始化的全局变量和静态变量的一块内存区域。特点是:可读写的,在程序执行之前BSS段会自动清0。所以,未初始化的全局变量在程序执行之前已经成0了。 * ...

    C语言的内存分配.pdf

    在Linux环境下,使用GCC编译器时,程序的内存结构通常包含文本段(Text Segment)、数据段(Data Segment)、BSS段(Block Started by Symbol Segment)和堆(Heap)。文本段包含程序的代码部分,是只读的;数据段...

Global site tag (gtag.js) - Google Analytics