程序的内存区域划分
来源:互联网 发布:怎么知道某个ip的域名 编辑:程序博客网 时间:2024/04/29 07:00
按照程序分段来看,ELF可执行程序就分为3段:
# size a.out
1792 + 381 + 0 = 2173 (text, data, bss)
data: 已经初始化的全局变量和常量字符串等
bss: 没有初始化的全局变量
data + bss 为全局数据区;
text + data + bss 为静态存储区;
堆区和栈区是程序运行时分配的
堆区: 存放动态数据;
栈区: 存放局部数据.
例如:
char arr[1024][1024];
void main()
{
exit(0);
}
# ls -l a.out
-rwxr-xr-x 1 lzhao sigdev 5028 Jul 11 15:33 a.out*
# size a.out
1680 + 348 + 1048576 = 1050604 //1024*1024=1048576
char arr[1024][1024]={0};
void main()
{
exit(0);
}
# ls -l a.out
-rwxr-xr-x 1 lzhao sigdev 1053604 Jul 11 15:32 a.out*
# size a.out
1680 + 1048924 + 0 = 1050604
- 程序的内存区域划分
- C/C++程序的内存区域划分
- 内存区域的划分
- java程序执行步骤,JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- JVM的内存区域划分
- 字符串转换系列三:VARIANT、COleVariant 和_variant_t
- 字符串转换系列二:CString、CStringA 和 CStringW
- 字符串转换系列四:CComBSTR和_bstr_t
- 字符串转换系列一:BSTR、LPSTR和LPWSTR
- 字符串转换系列五:BSTR、char*和CString转换
- 程序的内存区域划分
- Vc调试入门
- JAVA学习经验
- 巴黎感觉
- 《紫川》之转瞬红颜 帝国的黄昏 第01~05章
- 懒人的Python技巧#20060708
- 开门第一贴
- 两台SQL Server数据同步解决方案
- 职业规划