1、free 解读

  • Buffers:内核缓冲区用到的内存,对应 /proc/meminfo 中的 Buffers 值
  • Cache:内核页缓存和 Slab 用到的内存,对应 /proc/meminfo 中的 Cached 和 SReclaimable 之和

    2、proc 文件系统

  • Buffers:对原始磁盘块的临时存储,也就是用来缓存磁盘的数据,通常不会特别大(20MB左右)。内核就可以把分散的 写 集中起来,统一优化磁盘的写入。如 多次小的写合并成单次大的写。

  • Cached:从磁盘读取文件的页缓存,也就是用来缓存从文件读取的数据。这样,下次访问这些文件时,可以直接从内存中直接获取。
  • SReclaimable:是 Slab 的一部分。Slab 分两部分,可回收部分(用 SReclaimable 记录)、不可回收部分(用 SUnreclaim 记录)

    3、小结

  • Buffers:对磁盘数据的缓存

  • Cache:对文件数据的缓存

它们既会用在读请求,也会用在写请求。