/proc/[pid]/statm
Provides information about memory usage, measured in pages.
The columns are:
size (1) total program size
(same as VmSize in /proc/[pid]/status)
resident (2) resident set size
(inaccurate; same as VmRSS in /proc/[pid]/status)
shared (3) number of resident shared pages
(i.e., backed by a file)
(inaccurate; same as RssFile+RssShmem in
/proc/[pid]/status)
text (4) text (code)
lib (5) library (unused since Linux 2.6; always 0)
data (6) data + stack
dt (7) dirty pages (unused since Linux 2.6; always 0)
Some of these values are inaccurate because of a kernel-
internal scalability optimization. If accurate values are
required, use /proc/[pid]/smaps or
/proc/[pid]/smaps_rollup instead, which are much slower
but provide accurate, detailed information.
与VSZ相反,RSS(也是Resident Set Size的缩写)是一种度量,它显示了在进程执行期间分配给该进程的RAM数量 但是,它实际上并不是一个进程的RAM使用率的准确度量,因为它没有考虑已经加载到内存中的库。 因为RSS显示了整个内存输出,即使是已经预加载的信息,如果我们把进程列表中的所有内容加起来,我们得到的内存将超过分配的总内存。
1条答案
按热度按时间66bbxpm51#
从“男人”页面:
https://man7.org/linux/man-pages/man5/proc.5.html
字符串
另外:VMsize 是进程正在使用的“地址空间”:用途:可用地址的数量。这些地址不需要附加任何物理内存。附加的物理内存是RSS数字。
问:那么你对哪些具体的价值观有疑问?
请看我下面的评论,请参考这些链接:
简短的回答:
从top、/proc/nnn/stat和ps查看实际值也会很有帮助。
这里有一篇很棒的文章(许多文章之一):
Process Memory Management in Linux - Baeldung.com的
*VSZ内存
VSZ是虚拟内存大小的缩写。它是一个进程可以假设访问的内存总量。
它说明了二进制文件本身的大小、任何链接库以及任何堆栈或堆分配。
当一个进程启动时,VSZ内存变成RSS内存。
*RSS内存
与VSZ相反,RSS(也是Resident Set Size的缩写)是一种度量,它显示了在进程执行期间分配给该进程的RAM数量
但是,它实际上并不是一个进程的RAM使用率的准确度量,因为它没有考虑已经加载到内存中的库。
因为RSS显示了整个内存输出,即使是已经预加载的信息,如果我们把进程列表中的所有内容加起来,我们得到的内存将超过分配的总内存。