内部碎片、外部碎片

  “碎片的内存”描述一个系统中所有不可用的空闲内存。这些资源之所以仍然未被使用,是因为负责分配内存的分配器使这些内存无法使用。这一问题通常都会发生,原因在于空闲内存以小而不连续方式出现在不同的位置。由于分 配方法决定内存碎片是否是一个问题,因此内存分配器在保证空闲资源可用性方面扮演着重要的角色。


内部碎片、外部碎片剖析

internal fragmentation:when memory allocated to a process is larger than requested memory, 

the difference between these two numbers is internal fragmentation.

external fragmentation:External fragments exists when total memory space exists to satisfy a request,

but it is not continous. storage is broken into little pieces. 


在内存管理中,内部碎片是已经被分配出去的的内存空间大于请求所需的内存空间

外部碎片是指还没有分配出去,但是由于大小太小而无法分配给申请空间的新进程的内存空间空闲块


一般情况下,固定分区存在内部碎片,可变式分区分配会存在外部碎片

页式虚拟存储系统存在内部碎片;段式虚拟存储系统,存在外部碎片


针对碎片问题,如何有效利用内存?

为了有效的利用内存,使内存产生更少的碎片,要对内存分页,内存以页为单位来使用,最后一页往往装不满,于是形成了内部碎片。

为了共享要分段,在段的换入换出时形成外部碎片,比如5K的段换出后,有一个4k的段进来放到原来5k的地方,于是形成1k的外部碎片。

原文地址:https://www.cnblogs.com/zlcxbb/p/5759790.html