伙伴系统管理动态内存

  • 内容
  • 评论
  • 相关

前面介绍了系统在分配与回收存储空间时采取的边界标识法。本节再介绍一种管理存储空间的方法——伙伴系统

伙伴系统本身是一种动态管理内存的方法,和边界标识法的区别是:使用伙伴系统管理的存储空间,无论是空闲块还是占用块,大小都是 2 的 n 次幂(n 为正整数)。

例如,系统中整个存储空间为 2m 个字。那么在进行若干次分配与回收后,可利用空间表中只可能包含空间大小为:20、21、22、…、2m 的空闲块。

字是一种计量单位,由若干个字节构成,不同位数的机器,字所包含的字节数不同。例如,8 位机中一个字由 1 个字节组成;16 位机器一个字由 2 个字节组成。

可利用空间表中结点构成

伙伴系统中可利用空间表中的结点构成如图 1 所示:


图 1 结点构成

本文标题:伙伴系统管理动态内存

本文地址:https://www.hosteonscn.com/5251.html

评论

0条评论

发表评论

邮箱地址不会被公开。 必填项已用*标注