Cache替换算法

由于Cache很小,主存很大,Cache很容易装满,Cache满了怎么办?

——采用替换算法。

  • 全相联映射:Cache完全满了才需要替换,需要在全局中选择替换哪一块。
  • 直接映射:如果对应位置非空,则毫无选择地直接替换。
  • 组相联映射:分组内满了才需要替换,需要在分组内选择替换哪一块。

替换算法只有在全相联映射和组相联映射中才会被用到,直接映射无需使用替换算法。

接下来以全相联映射为例分别介绍随机算法(RAND)、先进先出算法(FIFO)、近期最少使用算法(LRU)、最近不经常使用算法(LFU)。

随机算法:

 先进先出算法:

抖动现象:频繁的换入换出现象(刚被替换的块很快又被调入)

近期最少使用算法(LRU):

  

最近不经常使用算法(LFU):

知识回顾

相关推荐

  1. 面试算法63:替换单词

    2024-01-02 06:12:01       64 阅读
  2. C++ STL:常用拷贝算法替换算法

    2024-01-02 06:12:01       49 阅读
  3. [算法与数据结构]:LRU Cache 的原理与C++实现

    2024-01-02 06:12:01       58 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-02 06:12:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-02 06:12:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-02 06:12:01       82 阅读
  4. Python语言-面向对象

    2024-01-02 06:12:01       91 阅读

热门阅读

  1. bat脚本:将ini文件两行值转json格式

    2024-01-02 06:12:01       52 阅读
  2. 2023.12.31每日一题

    2024-01-02 06:12:01       57 阅读
  3. ASP.NET Core SignalR推送服务器日志

    2024-01-02 06:12:01       51 阅读
  4. 再见2023,你好2024

    2024-01-02 06:12:01       50 阅读
  5. 机器学习 | Python实现基于GRNN神经网络模型

    2024-01-02 06:12:01       61 阅读
  6. LLM、AGI、多模态AI 篇三:微调模型

    2024-01-02 06:12:01       64 阅读