当前位置:首页 > 内存 > 正文

linux哪些进程占用内存

  • 内存
  • 2024-09-27 11:04:01
  • 3640

一、Linux系统中查看执行中的进程占用内存量的方法

要查看Linux中进程占用的内存,只需执行以下命令,并将[pid]替换为相应进程的PID号:

代码为如下:

cat/proc/[pid]/status

说明

除了内存信息外,/proc/[pid]中保存的信息/status还包括进程ID、信号等信息,这里暂时只介绍内存相关的信息。

字段说明VmPeak进程使用的虚拟内存峰值VmSizeVmLck进程当前使用的虚拟内存大小VmLck已锁定的物理内存大小(锁定的物理内存无法交换)VmHWM进程使用的物理内存峰值内存大小VmRSS进程当前使用的物理内存大小VmData进程占用的数据段大小VmStk进程占用的堆栈大小VmExe进程占用的代码段大小(不包括库)VmLib进程加载的动态库占用的内存大小(可能与其他进程共享)VmPTE进程占用的页表大小(交换表项数)VmSwap进程使用的交换区大小

示例

显示进程cron的内存信息并通过pidofcronID获取进程ID,或者通过ps-aux|grepcron。

代码如下:

$cat/proc/1161/status

Name:cron

State:S(sleeping)

Tgid:1161

Ngid:0

Pid:1161

PPid:1

TracerPid:0

Uid:0000

Gid:0000

FDSize:64

组:0

VmPeak:23792kB

VmSize:23656kB

VmLck:0kB

VmPin:0kB

VmHWM:1040kB

VmRSS:1004kB

VmData:260kB

VmStk:136kB

VmExe:40kB

VmLib:2668kB

VmPTE:72kB

VmSwap:0kB

线程:1

SigQ:0/15442

SigPnd:0000000000000000

ShdPnd:0000000000000000

SigBlk:0000000000000000

SigIgn:0000000000000000

SigCgt:0000000000010001

CapInh:0000000000000000

CapPrm:0000001ffffffffff

CapEff:0000001ffffffffff

CapBnd:0000001ffffffffff

Seccomp:0

Cpus_allowed:3

CPU_allowed_list:0-1

Mems_allowed:00000000,00000001

Mems_allowed_list:0

voluntory_ctxt_switches:151

nonvoluntory_ctxt_switches:0


二、Linux下如何查看哪些进程占用的CPU内存资源最多

在终端中输入top

如果按大写字母P,则占用CPU最多的进程将显示在第一行(按照CPU使用率的顺序)

当您按M时,占用内存最多的进程将显示在第一行(按照内存使用情况的顺序)