bss段是指的是用来存放未初始化的内存空间
.lcomm 相当于局部的static 未初始化局部变量
.comm 相当于全局的未初始化变量 或者static 全局未初始化变量
用来申请对应的运行时内存 它是通过操作系统进行初始化 而且bss段申请的空间 并不会占用elf文件的空间
只是在程序运行成为进程的时候 才会占用响应的内存空间 否则在硬盘的程序中 只是一个标识 用来标记 这一块要有多大的内存空间 我要在程序运行时候 给他分配 并且 操作系统分配初始化为0 bss段的分配内存属于静态内存分配(也就是程序在一开始就被清空了)
相当于一个地址一样 在链接时候就会产生一段内存块 但是并不占用文件空间 直到这块内存区进入到进程空间时候
.data 属于初始化内存之后的数据 存放区域
字符串常量值 存放在rodata 只读内存数据区 但是有的立即数 常量 会直接存放在.text段
来源:CSDN
作者:皇甫懿
链接:https://blog.csdn.net/weixin_43743847/article/details/104041430