Linux 内存占用查看|free 与 /proc/meminfo值输出关系

您所在的位置:网站首页 ubuntu查看系统内存大小 Linux 内存占用查看|free 与 /proc/meminfo值输出关系

Linux 内存占用查看|free 与 /proc/meminfo值输出关系

2023-06-03 18:24| 来源: 网络整理| 查看: 265

内容参考:https://blog.csdn.net/dazuiba008/article/details/119348612 ,https://www.cnblogs.com/abclife/p/15725264.html

一、内存查看

free -k 输出 (RHEL 5 and RHEL 6):

total used free shared buffers cached Mem: 7778104 2971960 4806144 0 211756 1071092 -/+ buffers/cache: 1689112 6088992 Swap: 4194296 0 4194296

free -k 输出 (RHEL 7/8):

total used free shared buff/cache available Mem: 1012952 252740 158732 11108 601480 543584 Swap: 1048572 5380 1043192

/proc/meminfo相关值

MemTotal: 7778104 kB MemFree: 4806144 kB Buffers: 211756 kB Cached: 1071092 kB SwapTotal: 4194296 kB SwapFree: 4194296 kB MemAvailable: 543584 kB --RHEL 7/8 中新增的一个值,该值用来替换-/+ buffers/cache

版本7.1以前:

free 输出相应的/proc/meminfo值Mem: totalMemTotalMem: usedMemTotal - MemFreeMem: freeMemFreeMem: shared (can be ignored nowadays. It has no meaning.)N/AMem: buffersBuffersMem: cachedCached-/+ buffers/cache: usedMemTotal - (MemFree + Buffers + Cached)-/+ buffers/cache: freeMemFree + Buffers + CachedSwap: totalSwapTotalSwap: usedSwapTotal - SwapFreeSwap: freeSwapFree

版本7.1以后:

free 输出相应的/proc/meminfo值Mem: totalMemTotalMem: usedMemTotal - MemFree - Buffers - Cached - SlabMem: freeMemFreeMem: sharedShmemMem: buff/cacheBuffers + Cached + SlabMem:availableMemAvailableSwap: totalSwapTotalSwap: usedSwapTotal - SwapFreeSwap: freeSwapFree 二、内存总结

linux的内存,大部分内存都是用于buffers和cache。Linux总是尝试通过将可用内存用于buffers(文件系统元数据)和cache(具有文件或块设备的实际内容的页面)来加速对磁盘的操作。这有助于系统运行得更快,因为磁盘信息已经在内存中,从而节省了I/O 操作。如果程序或应用程序(如 Oracle)需要空间,Linux将释放buffers和cache,为应用程序提供内存。 如果系统运行了一段时间,你通常会在第一行的"free"字段下看到的值很小。

为了提供说服力,在redhat官网找了以下的文档。

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/5/html/tuning_and_optimizing_red_hat_enterprise_linux_for_oracle_9i_and_10g_databases/chap-oracle_9i_and_10g_tuning_guide-memory_usage_and_page_cache

而对于新版本linux,看到的free结果是:

free -m total used free shared buff/cache available Mem: 48120 14788 509 63 32823 32963 Swap: 8191 0 8191

新版本的linux,你可以通过available来查看真正的可用内存有多少。

如果想看看进程都使用了多少的内存,网上有个很好用的python脚本:

https://raw.githubusercontent.com/pixelb/ps_mem/master/ps_mem.py



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3