什么时候MFU(最常用的)页面替换算法比LRU(最不常用的)有更好的性能什么时候比上帝抵抗军更糟?
在哪里可以找到超出mfu页面替换算法基本定义的信息?
最佳答案
通常,我看到一个mfu缓存用作主缓存,由使用lru替换算法(mru缓存)的辅助缓存支持。其思想是,最近使用的东西将保留在主缓存中,从而提供非常快速的访问。这减少了当很少的项目被频繁使用时在mru缓存中看到的“搅动”。它还可以防止那些常用的项被从缓存中逐出,因为它们已经有一段时间没有被使用了。
如果有少量的项经常被引用,而大量的项很少被引用,那么MFU工作得很好例如,一个典型的桌面用户可能有三到四个他一天多次使用的程序,以及数百个他很少使用的程序。如果你想通过缓存内存中的程序来提高他的经验,以便它们能够快速启动,那么你最好缓存那些他经常使用的东西。
另一方面,如果有大量的项基本上是随机引用的,或者某些项的访问频率略高于,或者项通常是成批引用的(即在短时间内多次访问项a,然后根本不访问),那么LRU缓存收回方案可能会更好。