结果如图1
16G内存,快使用完了,其实则不然;
这行是从系统方面看的:
total:总内存大小
used:已经使用的
free:剩余的
shared:多个进程共享的内存
buffers:针对磁盘的读写
cached:针对文件inode的读写
磁盘的操作有逻辑级别(文件系统)和物理级别(磁盘块),这俩种cache就是分别缓存逻辑和物理级别的数据的。
第三行中的buffers/cache是从应用程序的角度来看的:
系统的buffers和cached是缓存,就像是预备使用的一样,只是把它分出来放那儿,方便使用,
而第三行的俩个数据才是真实的内存使用情况(我们希望知道的程序真实占用的内存)
这里做个测试;
上面的七个数据:
total(1) used(2) free(3) buffers(4) cached(5)
buffer_used(6) buffer_free(7)
total=buffer_used+buffer_free
buffer_free=free+buffers+cached
所以:buffer_free这个值才是我们内存实际剩余的值