通过小代码体验程序中BSS段和DATA段的差异
2012-06-04 09:51
295 查看
注:原发表在Hadoop技术论坛
BSS(Block Started by Symbol)用来存储未初始化的全局变量,值为0的通常会被编译器认为未初始化,属于静态内存分配区,不会占用程序文件空间
DATA
用来存储已经初始化的全局变量,也属于静态内存分配区,会占用程序文件空间
TEXT
代码段,存储程序执行的代码指令,会占用程序文件空间
代码一:
int a[1024*1024*10] = {0};
int main() { return 0; }
代码二:
int a[1024*1024*10] = {1};
int main() { return 0; }
使用同样的编译上段两段代码,可以观察到文件大小相差很大,代码二会将数组a算进去。
BSS(Block Started by Symbol)用来存储未初始化的全局变量,值为0的通常会被编译器认为未初始化,属于静态内存分配区,不会占用程序文件空间
DATA
用来存储已经初始化的全局变量,也属于静态内存分配区,会占用程序文件空间
TEXT
代码段,存储程序执行的代码指令,会占用程序文件空间
代码一:
int a[1024*1024*10] = {0};
int main() { return 0; }
代码二:
int a[1024*1024*10] = {1};
int main() { return 0; }
使用同样的编译上段两段代码,可以观察到文件大小相差很大,代码二会将数组a算进去。
相关文章推荐
- 通过小代码体验程序中BSS段和DATA段的差异
- 通过小代码体验程序中BSS段和DATA段的差异
- 【hadoop2.6.0】通过代码运行程序流程
- 通过写代码,attach程序中创建的其他进程,将其加入VS的Debugger,以方便调试
- 【matlab代码练习7】通过程序调整灰度图像的灰度范围
- 通过反汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的
- 今天通过对HDWiki程序代码分析进行啦head部分的搜索SEO
- 模块和处理程序之通过HttpModule和HttpHandler拦截入站HTTP请求执行指定托管代码模块
- 编写高质量代码改善C#程序的157个建议——建议115:通过HASH来验证文件是否被篡改
- 通过汇编一个简单的C程序,分析汇编代码理解计算机工作原理
- Android代码通过包名调用系统卸载程序
- C#实现通过程序自动抓取远程Web网页信息的代码
- 小程序代码发布审核未通过,文娱-资讯
- JAVA操作SSL协议,通过Socket访问Https的程序代码例子
- 通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的
- 吉首大学_编译原理实验题_基于预测方法的语法分析程序的设计【通过代码】
- 操作系统是如何工作的-------通过一个简单的时间片轮转多道程序内核代码分析
- SAP ABAP/4学习---如何给写好的一个程序分配事务代码,用户可以直接通过事务码来访问程序.或者加入收藏夹(9)
- 有没有通过代码退出程序的方法--官方解答
- 通过反汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的(原创)