linux设置page cache大小,linux的page cache策略

1.buffer与cached

执行free命令出来的结果,包括buff和cache,实际可用的内存需要看第二行。

free命令产生的buffers和cached的区别参考以下文章:

2.控制cache

Linux对cache的使用没有规定上限,因为,物理内存不是拿来看的,而是拿来用的。只要当需要的时候,这部分内存还可以还回去就行!

1. dirty_expire_centisecs与dirty_writeback_centisecs

写文件时,先写入内核的cache中,后台进程pdflush或flush-n:m负责异步将写操作writeback到磁盘。这个进程每个dirty_writeback_centisecs(默认值500,即5s)厘秒唤醒然后执行一次。他会检查这些脏页面的时间是不是超时了,超时的会被写磁盘。超时时间就是dirty_expire_centisecs(默认值3000,即20s)厘秒。当然,就算一个都没超时,但脏页面很多的话,也是会写磁盘的。这个下面会讲。

2.dirty_background_bytes与dirty_background_ratio

参数意义:当脏页所占的百分比(相对于所有可用内存,即空闲内存页+可回收内存页)达到dirty_background_ratio时内核的pdflush线程开始回写脏页。增大会使用更多内存用于缓冲,可以提高系统的读写性能。当需要持续、恒定的写入场合时,应该降低该数值。

脏页所占的内存数量超过dirty_background_bytes时,内核的pdflush线程也会开始回写脏页。

注意:dirty_background_bytes参数和dirty_b

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