1. free
free 命令用于从整体上查看系统内存占用情况
$ free -h
total used free shared buff/cache available
Mem: 7.6G 6.6G 528M 8.7M 505M 783M
Swap: 0B 0B 0B
2. top
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看
$ top -u calendar
top - 15:58:31 up 29 min, 3 users, load average: 0.16, 0.13, 0.38
Tasks: 114 total, 1 running, 113 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.2 us, 0.2 sy, 0.0 ni, 99.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 8010220 total, 706500 free, 6795212 used, 508508 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 958624 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
10805 calendar 20 0 4135848 1.312g 17472 S 0.3 17.2 2:03.83 java
11084 calendar 20 0 5906496 2.475g 17332 S 0.3 32.4 5:17.68 java
11121 calendar 20 0 6005152 2.579g 17352 S 0.3 33.8 8:16.93 java
9291 calendar 20 0 146244 2292 988 S 0.0 0.0 0:00.11 sshd
内容解释:
PID:进程的ID
USER:进程所有者
PR:进程的优先级别,越小越优先被执行
NInice:值
VIRT:进程占用的虚拟内存
RES:进程占用的物理内存
SHR:进程使用的共享内存
S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
%CPU:进程占用CPU的使用率
%MEM:进程使用的物理内存和总内存的百分比
TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
COMMAND:进程启动命令名称
常用的命令:
P:按%CPU使用率排行
T:按MITE+排行
M:按%MEM排行
3. pmap
可以根据进程查看进程相关信息占用的内存情况,(进程号可以通过ps查看)如下所示:
$ pmap -d 10805
4. ps
如下例所示:
$ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' 其中rsz是是实际内存
$ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' | grep java | sort -nrk5
其中rsz为实际内存,上例实现按内存排序,由大到小