32bit总线可寻址2^32B地址,这是32位系统。上面是高地址空间,下面是低地址空间。1GB的内核空间,3GB的用户空间。内存空间分类(从上到下):内核区域,栈(执行空间),存储映射区(动态链接库等文件映射,mall...

32bit总线可寻址2^32B地址,这是32位系统。
上面是高地址空间,下面是低地址空间。
1GB的内核空间,3GB的用户空间。
内存空间分类(从上到下):
内核区域,栈(执行空间),存储映射区(动态链接库等文件映射,malloc调用mmap函数申请大内存),堆(动态申请的空间),BSS段(未初始化的全局变量以及静态变量),数据段(初始化的全局变量),代码段(包含常量字符串(只读)和二进制代码)。
分类方式不同有很多分法,这是比较全面的,很多时候容易把BSS和数据段合并,忽略掉存储映射区。
沃梦达教程
本文标题为:C/C++程序内存分配


基础教程推荐
猜你喜欢
- 如何告诉 MinGW 链接器不要导出所有符号? 2022-10-07
- C++高级数据结构之并查集 2023-04-20
- C语言文件操作与相关函数介绍 2023-06-13
- 使用C/C++读写.mat文件的方法详解 2023-03-05
- 使用VS2022开发在线远程编译部署的C++程序(图文详解) 2023-01-15
- C++类和对象到底是什么 2022-11-12
- 漫画讲解C语言中最近公共祖先的三种类型 2023-01-01
- C/C++ Qt StatusBar底部状态栏应用教程 2023-01-10
- C语言预编译#define(预处理) 2023-04-03
- C语言实现简易停车场管理系统 2023-03-13