0

对于课堂上的项目,我们应该通过使用整数数组和单/双链表或伙伴系统来模拟内存管理。我选择尝试创建一个伙伴系统,但我担心我缺乏关于它们如何实现的知识,并且我无法找到任何关于理论和逐步基本步骤的好的资源应用。Wiki 页面毫无意义。

这就是我想我会计算每个伙伴所需的大小的方式。如果用户要求 1000 个字节,它将找到下一个最高的 2^X 字节数。

    double y = 2;
    for (double x = 1, y = 2; y <= bytes; x++)
        y = pow(2, x);

不过,在那之后,我迷路了。

所以我有几个问题:

  1. 作为我对基本内存管理的第一次尝试,我是否在使用伙伴系统时咬得比我能咀嚼的更多?
  2. 伙伴系统和 C++ 上是否有任何好的分步资源?
4

0 回答 0