操作系统页面更换与Redis内存淘汰

本文介绍了操作系统中为了应对物理内存不足而采取的页面更换算法,包括随机、FIFO、时钟、NRU、LRU和工作集算法。接着讨论了Redis中的内存淘汰策略,如noeviction、allkeys-lru、allkeys-random、volatile-lru、volatile-random和volatile-ttl,以及Redis如何通过近似LRU算法实现高效内存管理。
摘要由CSDN通过智能技术生成

 戳蓝字「TopCoder」关注我们哦!

操作系统为什么需要页面更换呢,因为物理内存不够,不可能同时加载所需的所有数据页,因此只能加载正在或最近要使用的内存页。页面更换的目标是,尽量替换掉不再使用或者一段时间内不再使用的内存页,要不然会很容易触发缺页中断,该操作代价较大,涉及到从磁盘加载,因此页面更换可不是随便的事情。

为了达到降低随后发生缺页中断的次数或者概率,人们设计出了各种各样的页面替换算法,这些算法大致可分为公平算法和非公平算法。

  • 公平算法:随机算法、FIFO算法、时钟算法。

  • 非公平算法:NRU算法、LRU算法、工作集算法。

随机算法

这种就是简单的随机选择进行页替换,无需多言,简单粗暴。

FIFO算法

这种就是先来后到,可以使用链表记录页分配的先后顺序,淘汰时按照顺序淘汰即可,也是非常的简单粗暴。

时钟算法

内存使用中的页按照时钟的逻辑形状,淘汰页时按照时钟顺序检查,如果页未访问到(每个页对应一个访问标识,未访问到时设置为0),则直接替换;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值