page cache 和 buffer cache的区别

来源:互联网 发布:建筑工程定额软件手机 编辑:程序博客网 时间:2024/05/17 02:48

1. page cache /buffer cache 的区别:

磁盘的操作有逻辑级(文件系统)和物理级(磁盘块),这两种Cache就是分别缓存逻辑和物理级数据的。
假设我们通过文件系统操作文件,那么文件将被缓存到Page Cache,如果需要刷新文件的时候,Page Cache将交给Buffer Cache去完成,因为Buffer Cache就是缓存磁盘块的。

2. free 里面的page cache /buffer cache

$free -m             total       used       free     shared    buffers     cachedMem:        129169     110777      18392          0        585     102936-/+ buffers/cache:       7255     121914Swap:         1952        714       1238
(1). 里面的cached: 指的就是page cache 
(2). 里面的buffers:buffer cache

3.内存锁 lock的应用

(1).  我们用文件系统读取文件(cat *.txt) 会把数据写到page cache 里面;我们可以对文件进行加lock;如果一旦把内存中的数据加锁lock;

这样再内存不过时就不会把已经加上lock的数据交换到swap或者磁盘;这样能避免核心数据被交换出;因为核心数据被交换出去buffer cache或者磁盘

再次读取会影响服务的性能;latency timeout

0 0
原创粉丝点击