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 并不冲突,而是位于不同层次的两次"缓存"行为。
相关推荐
1+2单片机电子设计1 小时前
基于 STM32 的数控 BUCK-BOOST 升降压电源设计
stm32·单片机·嵌入式硬件
李永奉3 小时前
杰理芯片SDK开发-内置触摸按键配置教程
嵌入式硬件·mcu·物联网
森焱森3 小时前
GD32F4 DSP
linux·c语言·arm开发·驱动开发·嵌入式硬件
SystickInt3 小时前
32 LCD显示(FSMC应用)-寄存器
stm32·单片机·嵌入式硬件
d111111111d3 小时前
C语言中static修斯局部变量,全局变量和函数时分别由什么特性
c语言·javascript·笔记·stm32·单片机·嵌入式硬件·学习
逐步前行4 小时前
C51_74HC595串口转并口
单片机·嵌入式硬件
Fly ☆4 小时前
arecord[linux下的录音工具]命令的用法
linux·运维·服务器·嵌入式硬件
轻微的风格艾丝凡5 小时前
浅谈哈佛结构与冯诺依曼结构
嵌入式硬件·嵌入式软件
时空未宇5 小时前
Hi3403-Demo板烧写OH-L1镜像烧写指引
嵌入式硬件
weixin_452600696 小时前
守护用电安全的“守护神”,高性能CMOS漏电保护器专用电路D55127快速响应可替代FM2149
嵌入式硬件·无人机·充电桩·散热风扇