内存页面置换算法(FIFO,LRU , LFU)

在操作系统的内存管理中,有一类很重要的算法就是 内存页面置换算法(包括FIFO,LRU,LFU等几种常见页面置换算法)。事实上,Cache算法和内存页面置换算法的核心思想是一样的:都是在给定一个限定大小的空间的前提下,设计一个原则如何来更新和访问其中的元素。
LRU 全称是Least Recently Used,即最近最久未使用的意思。 下面说一下LRU算法的核心思想,LRU算法的设计原则是:如果一个数据在最近一段时间没有被访问到,那么在将来它被访问的可能性也很小。也就是说, 当限定的空间已存满数据时,应当把最久没有被访问到的数据淘汰。

FIFO(First in First out),先进先出。在FIFO Cache设计中,核心原则就是: 如果一个数据最先进入缓存中,则应该最早淘汰掉 。也就是说,当缓存满的时候,应当把最先进入缓存的数据给淘汰掉。

LFU(Least Frequently Used)最近最少使用算法。它是基于“如果一个数据在最近一段时间内使用次数很少,那么在将来一段时间内被使用的可能性也很小”的思路。

注意LFU和LRU算法的不同之处,LRU的淘汰规则是基于访问时间,而LFU是基于访问次数的。

猜你喜欢

转载自blog.csdn.net/qq_29004389/article/details/81015479