可执行程序的结构
2015-07-27 21:34
253 查看
可执行程序的结构;
1.首先, 我们知道编程就是在写数据和处理数据的逻辑
2.一个应用程序编译以后, 得到可执行文件,这个文件就分为: 代码区, 常量区双击这个程序, 在宿主系统上会有一个应用程序加载器的软件.该程序会加载应用程序到内存中。加载内存中的时候, 程序中的全局变量, 常量等数据就开始加载。
3.内存划分为: 代码区(段), 常量区(段), BSS段, 堆区, 栈区
4.代码区存储的是代码对应的机器指令
5.常量区存储的是程序中所有的常量
6.BSS段, 用来存储全局的变量的值
7.堆区中存储由用户管理的动态内存, 这个内存完全由用户管理
8.栈区是操作系统维护的内存,每一个函数在运行之前, 都会向操作系统申请一定的内存, 然后供函数运行, 函数执行结束, 内存释放。
1.首先, 我们知道编程就是在写数据和处理数据的逻辑
2.一个应用程序编译以后, 得到可执行文件,这个文件就分为: 代码区, 常量区双击这个程序, 在宿主系统上会有一个应用程序加载器的软件.该程序会加载应用程序到内存中。加载内存中的时候, 程序中的全局变量, 常量等数据就开始加载。
3.内存划分为: 代码区(段), 常量区(段), BSS段, 堆区, 栈区
4.代码区存储的是代码对应的机器指令
5.常量区存储的是程序中所有的常量
6.BSS段, 用来存储全局的变量的值
7.堆区中存储由用户管理的动态内存, 这个内存完全由用户管理
8.栈区是操作系统维护的内存,每一个函数在运行之前, 都会向操作系统申请一定的内存, 然后供函数运行, 函数执行结束, 内存释放。
相关文章推荐
- 初步学习:VO,BO和PO
- 可执行程序的结构
- Quicksum
- LinkedBlockingQueue源码分析
- 利用指针地址偏移打印一维数组
- Installing Apache Hadoop Single Node
- 利用指针地址偏移打印一维数组
- 最常用的javascript方法函数
- Python脚本调试方法
- linux 系统中的64种信号
- 数据结构表达式求值有关问题
- 有关C++中为什么用模板类的原因
- poj 1753Flip Game---枚举
- 婴儿肚脐出血怎么办?
- zoj3191 Strange Clock(水题,但为何是wrong answer???)
- HDU 2492 树状数组
- DOM对象-
- uva725 Division
- Rotate List
- caffe c++批量抽取特征