技术解析

大佬们, Linux 内存情况看 free 还是看 available 呀
0
2021-06-16 16:16:42
idczone

....... total used free shared buff/cache available
Mem 62G 18G 19G 9.2M 23G 43G
Swap 31G 0B 31G


下面是查到的,但是还是不理解 “buffer 和 cache 其实都属于已经被使用的内存” ,是被占用了,还是被使用过现在没被占用呢? Linux 内存情况看 free 还是看 available 呀?


free 与 available 的区别 free 是真正尚未被使用的物理内存数量。 available 是应用程序认为可用内存数量,available = free + buffer + cache (注:只是大概的计算方法)

Linux 为了提升读写性能,会消耗一部分内存资源缓存磁盘数据,对于内核来说,buffer 和 cache 其实都属于已经被使用的内存。但当应用程序申请内存时,如果 free 内存不够,内核就会回收 buffer 和 cache 的内存来满足应用程序的请求。


个人习惯是看 available,因为 linux 的内存管理机制使先申请再使用,究竟用不用就看程序了
所以 free 只是完全没有被申请的内存,当然 available 也不是百分百准确。两个辅助着来看就行了。

`man free`

了解了 感谢!

“buffer 和 cache 其实都属于已经被使用的内存” buffer 和 cache 就是里面有缓存的数据,这些数据可能正在使用也可能待会会用,但是随时删掉也无所谓。
其实 windows 也是一样,空闲的内存系统都要尽量用光。

看这个 https://www.cnblogs.com/black-mamba/p/5918688.html
可用内存=free 的内存+cached 的内存+buffers 的内存

cat /proc/meminfo



数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服