当前位置:网站首页>程序的内存模型
程序的内存模型
2022-07-02 06:26:00 【想搞钱的小陈】
内存分区模型。
内存分为4个区域,分别为代码区,全局区,栈区,堆区。
当一个进程开始时,就有分配以下4个区域。

(一)代码区和全局区
在程序编译后,会生成一个exe的可执行程序,未执行该程序前分为两个区域,代码区和全局区。
代码区
- 存放函数体的二进制代码,由操作系统进行管理。
- 存放CPU执行的机器指令。
- 代码区是共享的,共享的目的是对于频繁被执行的程序,只需要在内存中有一份代码就可,去掉冗余的代码。
- 代码区是只读的,只读的目的是防止程序被修改它的指令。
全局区
存放全局变量和静态变量(static int a), 包含了常量区,(字符串常量,其他常量const修饰的变量)
const修饰的全局变量放在全局区,const修饰的局部变量放在代码区。
栈区:
存放的是子程序的返回地址、子程序的参数、以及程序的局部变量。
堆区:
存放动态分配的数据 例如:new 和malloc。
边栏推荐
- 基于pytorch的YOLOv5单张图片检测实现
- 【信息检索导论】第三章 容错式检索
- SSM student achievement information management system
- Sparksql data skew
- 图片数据爬取工具Image-Downloader的安装和使用
- Oracle segment advisor, how to deal with row link row migration, reduce high water level
- 华为机试题
- [introduction to information retrieval] Chapter II vocabulary dictionary and inverted record table
- 传统目标检测笔记1__ Viola Jones
- 点云数据理解(PointNet实现第3步)
猜你喜欢

【BERT,GPT+KG调研】Pretrain model融合knowledge的论文集锦

iOD及Detectron2搭建过程问题记录

Faster-ILOD、maskrcnn_benchmark训练coco数据集及问题汇总

@Transational踩坑

Oracle 11g uses ords+pljson to implement JSON_ Table effect

DNS attack details

Practice and thinking of offline data warehouse and Bi development

@Transitional step pit

Mmdetection installation problem
![[medical] participants to medical ontologies: Content Selection for Clinical Abstract Summarization](/img/24/09ae6baee12edaea806962fc5b9a1e.png)
[medical] participants to medical ontologies: Content Selection for Clinical Abstract Summarization
随机推荐
Agile development of software development pattern (scrum)
传统目标检测笔记1__ Viola Jones
@Transational踩坑
Principle analysis of spark
The first quickapp demo
机器学习理论学习:感知机
解决万恶的open failed: ENOENT (No such file or directory)/(Operation not permitted)
[introduction to information retrieval] Chapter 3 fault tolerant retrieval
PointNet原理证明与理解
离线数仓和bi开发的实践和思考
Use matlab to realize: chord cut method, dichotomy, CG method, find zero point and solve equation
MySQL has no collation factor of order by
使用Matlab实现:弦截法、二分法、CG法,求零点、解方程
Illustration of etcd access in kubernetes
使用MAME32K进行联机游戏
parser. parse_ Args boolean type resolves false to true
Huawei machine test questions-20190417
软件开发模式之敏捷开发(scrum)
MMDetection模型微调
SSM学生成绩信息管理系统