linux page cache 大小,linux pagecache与内存占用

一、概念介绍

linux系统中通常使用free命令来查看内存使用情况,free命令主要是从/proc/meminfo文件中读取的内存数据然后进行简单处理进行展示,根据查看free命令的手册了解到各个字段的含义。

total:系统总内存大小(分物理内存mem、交换分区swap)

used:已使用的内存(total - free - buffers - cache)

free:未使用的内存

shared:通常情况下是tmpfs(内存文件系统)使用的内存

buffers:内核缓冲区使用的内存

cache:page cache和slab所占用的内存之和

buff/cache:buffers + cache

available:在不进行swap的前提下还有多少内存可用于创建新的进程。这个跟free、buff/cache字段中的数字有所不同,这里的剩余内存是free加上可以被回收(有些slab、cache正在使用,不能回收)的page cache、mem slab的值的总和。

上述的page cache是系统读写磁盘文件时为了提高性能而将一部分文件缓存到内存中。这种做法虽然提高了磁盘I/O性能,但是也极大的占用了物理内存,特别当系统内存紧张时更容易出现问题。

二、实际用途

linux系统会经常执行一些写日志、生成备份文件的工作,当这些文件比较大时相应的cache就会占用大量的系统内存,

你可能感兴趣的:(linux,page,cache,大小)