社区
C语言
帖子详情
windows内存管理中内存碎片的问题
sshenmeshishenme
2015-05-19 10:01:58
windows内存不是建立在分页机制上的吗,
如果假设A有7KB B有5KB C有11KB,
那么应该是实际分配了8KB(1区),8KB(2区),12KB(3区)的内存对应图中1,2,3
现在B没了,分给B的8KB回收(2区),现在比如进程需要9KB的空间,那么2区还是能贡献2个页啊,怎么就空洞不能用了
(我知道有个65535的分配粒度,但是道理上还是一样的啊)
...全文
378
4
打赏
收藏
windows内存管理中内存碎片的问题
windows内存不是建立在分页机制上的吗, 如果假设A有7KB B有5KB C有11KB, 那么应该是实际分配了8KB(1区),8KB(2区),12KB(3区)的内存对应图中1,2,3 现在B没了,分给B的8KB回收(2区),现在比如进程需要9KB的空间,那么2区还是能贡献2个页啊,怎么就空洞不能用了 (我知道有个65535的分配粒度,但是道理上还是一样的啊)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
spaceman10
2015-05-19
打赏
举报
回复
所以才要内存对齐
pengzhixi
2015-05-19
打赏
举报
回复
这里的内存分配你要从虚拟内存地址去考虑。资料中是要求分配连续内存地址,中间不能有被其他已经使用的地址隔开的。
sshenmeshishenme
2015-05-19
打赏
举报
回复
难道这个只是为了使用非分页内存的情况?
xiayuxuan91
2015-05-19
打赏
举报
回复
连续内存...那本书是windows驱动开发技术详解
windows
内存
管理
操作
堆
内存
,虚拟
内存
, 文件映射
windows
内存
管理
api学习笔记
文章目录为什么使用虚拟
内存
分配虚拟
内存
Windows
内存
管理
APIVirtualAllocVirtualProtectVirtualFreeC++代码 为什么使用虚拟
内存
虚拟
内存
最适合用来管理大型对象或数据结构。 比如说,电子表格程序,有很多单元格,...
C++
中
map 容器的
内存
释放机制及
内存
碎片
管理
C++
中
map 容器的
内存
释放机制及
内存
碎片
管理 C++
中
的容器很好用,比如 vector, map 等,可以动态扩容,自己管理
内存
,不用用户关心,但是在某些极端情况下,如果
内存
比较紧张的情况下,可能用户对于这些容器自己...
虚拟
内存
与物理
内存
与
内存
碎片
-杂谈
内存
杂谈 虚拟
内存
与物理
内存
为什么要有虚拟
内存
?...当物理
内存
的供应量变小时,
内存
管理
器会将物理
内存
页(通常大小为 4 KB)保存到磁盘文件。数据或代码页会根据需要在物理
内存
与磁盘之间移动。(如linux...
Windows
内存
管理
的几种方式和优缺点
Windows
内存
管理
方式主要分为:页式管理、段式管理和段页式管理。 页式管理的基本原理是将各进程的虚拟空间划分为若干个长度相等的页。把
内存
空间按页的大小划分为片或者页面,然后把页式虚拟地址与
内存
地址建立...
C语言
69,369
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章