Linux 进程内存使用

17 Mar 2025 | 阅读 2 分钟

确定程序通常需要检测系统的内存使用情况,这些程序会消耗所有 CPU 资源,或者导致 CPU 活动变慢。跟踪进程内存使用情况对于指定服务器负载至关重要。通过解析使用数据,服务器可以平衡负载,而不会减慢系统速度,并满足用户请求。

在 Linux 中检查进程内存使用情况的命令

有多种命令可以检查 Linux 中的进程内存使用情况

1. free

此命令显示系统当前可用的内存量以及已用内存量,包括交换内存和物理内存。free 命令通过解析 /proc/meminfo 收集此数据。默认情况下,内存量以千字节为单位显示。

Linux Process Memory Usage

如果我们要定期执行程序,则可以使用 watch 命令。

语法


Linux Process Memory Usage

根据上图,Linux 系统分配了 3842 MB 内存和 7628 MB 交换空间。在 3852 MB 内存中,目前使用了 678 MB;然而,2373 MB 是空闲的。相应地,对于交换空间,在 7628 MB 中,目前使用了 0 MB,并且系统中有 7628 MB 是空闲的。

2. vmstat

如果我们要显示系统的虚拟内存统计信息,则可以使用 vmstat 命令。此命令显示与内存、磁盘、分页、CPU 活动等相关的数据。当我们第一次使用此命令时,它会返回自上次重新启动以来的数据平均值。下次使用时,它会根据延迟采样周期返回数据。

Linux Process Memory Usage

Linux Process Memory Usage

Linux Process Memory Usage

3. Top

top 命令用于显示系统中当前运行的所有进程。top 命令显示了内核当前管理的线程和进程列表。为了监视内存使用总量,我们也可以使用此命令。

Linux Process Memory Usage

Linux Process Memory Usage

4. /proc/meminfo

此文件包含与内存使用相关的所有数据。它提供当前内存使用情况的详细信息,而不是旧的存储值。

Linux Process Memory Usage

5. htop

它是一个交互式进程查看器。htop 命令与 top 命令相同,不同之处在于我们可以水平和垂直滚动,以允许用户查看系统中运行的每个进程,包括它们的完整命令行,并将它们视为进程树,选择进程并一次性对它们进行操作。

Linux Process Memory Usage
下一主题Linux Tree 命令