如何才能知道 Linux(Ubuntu)中某个进程的确切内存?

如何才能知道 Linux(Ubuntu)中某个进程的确切内存?

我在这个网站上找到了很多帖子,详细介绍了如何在 Linux 中查找进程的使用情况,但其中大多数都返回每个进程的内存/CPU 使用率百分比。我需要知道每个进程的确切使用情况,因为我感兴趣的进程的结果总是四舍五入为零。

答案1

在具有虚拟内存和共享库的现代操作系统中,内存使用情况很难定义。有些事情使事情变得复杂:进程的某些内存可能:

  • 实际上不在 RAM 中,而是被交换到磁盘
  • 尚未分配,仅在第一次使用时分配
  • 与其他进程共享
  • 是出于效率原因而缓存的磁盘文件。
  • 不是系统内存,而是网卡等的内存。

根据您是否要包含/排除上面列表的部分,您会得到不同的结果:

  • RSS(驻留集大小)是进程实际占用的 RAM 内存量。这包括共享库,但不包括换出的数据。
  • VSZ(虚拟大小)是内存的总量,包括换出的部分。

另请参阅此问题:https://stackoverflow.com/questions/7880784/what-is-rss-and-vsz-in-linux-memory-management

相关内容