首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么时候FIFO会胜过LRU替换算法?

什么时候FIFO会胜过LRU替换算法?
EN

Stack Overflow用户
提问于 2021-02-04 21:50:20
回答 2查看 125关注 0票数 0

当FIFO战胜LRU时,我需要一个数字序列。假设小于15的页数和页数是3。我希望FIFO比LRU得到更少的页错误。有可能吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-02-05 00:29:14

对于三页缓存,序列1, 2, 3, 1, 4, 2可以做到这一点。缓存的演变:

代码语言:javascript
复制
FIFO    LRU
1       1
12      12
123     123 [three misses for both as the cache fills]
123     231 [LRU moves 1 to the back]
234     314
234     142 [LRU but not FIFO misses on 2]
票数 2
EN

Stack Overflow用户

发布于 2021-02-05 00:14:21

FIFO是一种简单的缓存实现方式,虽然实现起来很简单,但并不能提供最佳的页面错误。

当使用基于时钟(FIFO的变体)的数据结构时,我们可以获得更好的性能,与LRU相比,这种结构提供的页面错误更少。时钟有多种变体。

在实践中,LRU是最优的缓存实现,各种操作系统、数据库都使用LRU的变体,如ARC、LIRS...

有关更多信息,请参阅wiki以了解各种缓存策略

https://en.wikipedia.org/wiki/Cache_replacement_policies https://en.wikipedia.org/wiki/Page_replacement_algorithm

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66047001

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档