操作系统基础——04 连续内存分配与碎片整理

概述

操作系统基础——04 连续内存分配与碎片整理

分区的动态分配

什么时候需要提供连续空间的分配?

  1. 当一个程序准许运行在内存中时,需要分配给程序一个连续区间;

  2. 当运行的程序需要访问数据时,需要给数据分配一个连续区间。


动态分区的分配策略

  • 最先分配(First-fit)
  • 最优分配(Best-fit)
  • 最差分配(Worst-fit)




最先分配

为了分配N字节,使用第一个比N字节大的空闲块。

譬如现在我们需要分配400字节,我们就使用第一个比400字节大的空闲块。
操作系统基础——04 连续内存分配与碎片整理





最优分配

为了分配N字节,使用最小的可用空闲块。
操作系统基础——04 连续内存分配与碎片整理




最差分配

为了分配N字节,使用最大的可用空闲块。
操作系统基础——04 连续内存分配与碎片整理





碎片整理


压缩式碎片整理

操作系统基础——04 连续内存分配与碎片整理


交换式碎片整理

操作系统基础——04 连续内存分配与碎片整理