我正在阅读操作系统概念essisentals第8版。当作者查看连续的内存分配和最差的时候,作者声明"分配最大的漏洞。同样,我们必须搜索整个列表,除非按大小排序。这种策略产生了最大的剩余孔,这可能比最合适的方法中较小的剩余孔更有用。"
所以我的问题是,什么时候离开最大的剩余洞是一个更好的方法?
答案 0 :(得分:6)
如果提交的所有流程往往大小相同,则留下最大的剩余漏洞可能是更好的方法。
在这种情况下,如果你有一个大的空闲块(比如50MB)并且提交的大多数进程都比那个小(比如10MB),那么将它们放在这个大块中实际上会更好可以更好地使用剩余空间,而不是将它们放在一个更大的块(可能是11-15MB)中,这会留下一些小的无法使用的空间。
我不知道它是否真的在任何地方使用过。
阅读(和播放):http://research.cs.vt.edu/AVresearch/MMtutorial/WorstFit.php