随着系统持续的运行,内存不停的被分配使用、回收,再分配、再回收…,在这个过程中,内存往往会变理碎片化,不再连续。尽管通过虚拟内存可以将分散的物理页面以连续的方式对外展现(类似外观模式),但是有的时候需要分配比较大的,并且连续的物理内存。例如,当设备驱动程序需要一个很大的DMA缓存区的时候,怎么办呢?
内存管理系统通过内存整理来解决碎片化的问题。该机制统一将被占用的页面从内存的下部区域移动到上部空闲的区域,当完成一次整理之后,占用的页面在内存区域的一侧,空闲页面则连续的在另一侧,这样就有较大的的连续物理内存供分配使用了。
Linux内存管理之内存碎片
最新推荐文章于 2023-11-09 13:14:35 发布
文章讨论了内存碎片化问题在系统运行中如何影响内存分配,通过内存管理系统中的整理机制,将占用的页面移动至空闲区域,确保在需要大块连续内存时,如DMA缓存区,能有效提供资源。
1054

被折叠的 条评论
为什么被折叠?



