我正在阅读操作系统概念要点第 8 版。当作者讨论连续内存分配和最坏拟合时,作者声明“分配最大的空洞。同样,我们必须搜索整个列表,除非它按大小排序。这种策略产生最大的剩余空洞,这可能比从最合适的方法中获得更小的剩余孔。”
所以我的问题是,什么时候留下最大的剩余孔是更好的方法?
最佳答案
如果提交的所有进程都大致相同,那么留下最大的剩余漏洞可能是更好的方法。
在这种情况下,如果您有一个大的空闲块(比如 50MB)并且提交的大多数进程往往比这个小(比如 10MB),那么将它们放在这个大块中实际上会更好,以便您可以使用剩余空间更好,而不是将它们放在一个稍大的块中(可能是 11-15MB),这会留下一些小的不可用空间。
我不知道它是否真的在任何地方使用过。
阅读(和播放)此内容:http://research.cs.vt.edu/AVresearch/MMtutorial/WorstFit.php
关于memory-management - 什么时候最适合内存分配有用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15650029/