32bit总线可寻址2^32B地址,这是32位系统。上面是高地址空间,下面是低地址空间。1GB的内核空间,3GB的用户空间。内存空间分类(从上到下):内核区域,栈(执行空间),存储映射区(动态链接库等文件映射,mall...
32bit总线可寻址2^32B地址,这是32位系统。
上面是高地址空间,下面是低地址空间。
1GB的内核空间,3GB的用户空间。
内存空间分类(从上到下):
内核区域,栈(执行空间),存储映射区(动态链接库等文件映射,malloc调用mmap函数申请大内存),堆(动态申请的空间),BSS段(未初始化的全局变量以及静态变量),数据段(初始化的全局变量),代码段(包含常量字符串(只读)和二进制代码)。
分类方式不同有很多分法,这是比较全面的,很多时候容易把BSS和数据段合并,忽略掉存储映射区。
沃梦达教程
本文标题为:C/C++程序内存分配
猜你喜欢
- 详解C语言中sizeof如何在自定义函数中正常工作 2023-04-09
- Qt计时器使用方法详解 2023-05-30
- C语言手把手带你掌握带头双向循环链表 2023-04-03
- 我应该为我的项目使用相对包含路径,还是将包含目录放在包含路径上? 2022-10-30
- c++ const 成员函数,返回一个 const 指针.但是返回的指针是什么类型的 const? 2022-10-11
- ubuntu下C/C++获取剩余内存 2023-09-18
- C语言qsort()函数的使用方法详解 2023-04-26
- C语言详解float类型在内存中的存储方式 2023-03-27
- Easyx实现扫雷游戏 2023-02-06
- C++ 数据结构超详细讲解顺序表 2023-03-25