cache,system cache 和 DRAM的关系

  1. Cache(缓存)

    • 由 SRAM 构成,集成在 CPU 内部或与 CPU 封装在一起。
    • 作用:利用程序访问的"时间/空间局部性",把 DRAM 里近期可能再用的指令/数据复制到速度高一个数量级的 SRAM 中,减少 CPU 等待 DRAM 的时间 。
    • 典型层级:L1 → L2 → L3,容量 KB~几十 MB,延迟 1~30 个时钟周期。
  2. DRAM(Dynamic RAM,常缩写成 D-RAM)

    • 主板上的"主存 / 内存条"。
    • 容量大(GB 级),成本低,但需周期性刷新,访问延迟 100 ns 级,比 SRAM 慢 1~2 个量级 。
    • 对 CPU 来说,它是 Cache 的"后备存储器(backing store)";当 Cache Miss 时才去访问 DRAM。
  3. System Cache(操作系统层面"系统缓存")

    • 软件视角的缓存,例如 Linux 的 page cache、buffer cache。
    • 仍然位于 DRAM 里,只是由 OS 而并非硬件把磁盘/文件的热门块留在内存,减少真正去读盘的次数 。
    • 与 CPU 硬件 cache 处于不同层次:硬件 cache 在 "CPU ↔ DRAM" 之间;system cache 在 "DRAM ↔ 磁盘" 之间。

关系总结(自上而下)

CPU 寄存器

↓ 1~4 周期

L1/L2/L3 Cache(SRAM,硬件自动管理)

↓ 十几~几十周期

DRAM(主存,软件可见的物理内存;内含 OS 的 system cache 区域)

↓ 毫秒级

磁盘/SSD(持久存储)

因此:

  • Cache 解决 "CPU 快、DRAM 慢" 的矛盾;
  • DRAM 是 Cache 的直接后备;
  • System cache 是 OS 在 DRAM 里再开辟的一块"磁盘缓存",与硬件 cache 并不冲突,而是位于不同层次的两次"缓存"行为。
相关推荐
MAR-Sky1 小时前
keil5中数据的不同定义和单片机(以stc8为例)里的对应关系(idata,xdata,data,code)
单片机·嵌入式硬件
项目題供诗3 小时前
51单片机入门(八)
单片机·嵌入式硬件·51单片机
羽获飞3 小时前
从零开始学嵌入式之STM32——9.STM32的时钟系统
stm32·单片机·嵌入式硬件
飞睿科技4 小时前
乐鑫智能开关方案解析:基于ESP32-C系列的低功耗、高集成设计
嵌入式硬件·物联网·esp32·智能家居·乐鑫科技
来自晴朗的明天5 小时前
13、NMOS 电源防反接电路
单片机·嵌入式硬件·硬件工程
17(无规则自律)5 小时前
深入浅出 Linux 内核模块,写一个内核版的 Hello World
linux·arm开发·嵌入式硬件
芯岭技术5 小时前
PY32MD310单片机:高性能、低功耗的32位电机控制微控制器
单片机·嵌入式硬件
wotaifuzao6 小时前
STM32 + FreeRTOS 的订阅通知组件架构
stm32·嵌入式硬件·架构·freertos·事件驱动·嵌入式架构
小龙报7 小时前
【51单片机】深度解析 51 串口 UART:原理、配置、收发实现与工程化应用全总结
c语言·开发语言·c++·stm32·单片机·嵌入式硬件·51单片机
Lester_110114 小时前
STM32 高级定时器PWM互补输出模式--如果没有死区,突然关闭PWM有产生瞬间导通的可能吗
stm32·单片机·嵌入式硬件·嵌入式软件