我正在考虑是否可以消除 Knuth 内存堆上的外部碎片?在尝试解决这个问题之前,我不确定我们是否可以在堆上移动块。如果我们可以移动块,那么我相信解决外部碎片是微不足道的。
我对这个问题做了一些思考。如果我只是将所有内容复制到新位置(虚拟地址),然后将之前指向该块的所有指针更新为新地址,会有什么问题?我认为这可能是一个正确的解决方案,但我不是很自信。
有人对这个问题有任何想法吗?
提前致谢。
我正在考虑是否可以消除 Knuth 内存堆上的外部碎片?在尝试解决这个问题之前,我不确定我们是否可以在堆上移动块。如果我们可以移动块,那么我相信解决外部碎片是微不足道的。
我对这个问题做了一些思考。如果我只是将所有内容复制到新位置(虚拟地址),然后将之前指向该块的所有指针更新为新地址,会有什么问题?我认为这可能是一个正确的解决方案,但我不是很自信。
有人对这个问题有任何想法吗?
提前致谢。