sher@ubuntu:~/sources_code/$ free -m
total used free shared buffers cached
Mem: 986 772 214 13 39 232
-/+ buffers/cache: 499 486
Swap: 1021 92 929
我已经知道真正可用内存是free + buffers + cached,我想知道这里的buffer和cache到底有什么区别,我google很多,感觉说的最靠谱的是这个
A buffer is something that has yet to be "written" to disk. A cache is something that >has been "read" from the disk and stored for later use.
这样理解是否准确呢?我觉得cache很好理解,就是当OS读磁盘文件的时候缓存到内存中,即使应用程序已经不需要这个文件了,关闭了文件句柄,但是可能OS并没有把文件从cache去删掉,这样根据局部性原理,再次访问这个文件就会速度很快,这个buffer到底是什么?
有哪里理解不对 请指出 - -