Linux性能指标--内存
目录
查看系统内存使用情况
使用free
命令,可以查看当前系统内存状况:
# 注意不同版本的free输出可能会有所不同
$ free
total used free shared buff/cache available
Mem: 8169348 263524 6875352 668 1030472 7611064
Swap: 0 0 0
free
输出的是一个表格,默认以字节为单位。表格一共两行(物理内存,交换分区)六列(total,used,free,shared,buff/cache,available):
- total:总内存大小
- used:已使用内存的大小,包含了共享内存
- free:未使用内存的大小
- shared:共享内存的大小
- buff/cache:缓存和缓冲区的大小
- available:新进程可用内存的大小
available
不仅包含未使用的内存,还包括了可回收的缓存,所以会比未使用内存大一些。
查看进程的内存使用
使用top
或者ps
等工具可以查看每个进程的内存使用。、
# 按下M切换到内存排序
$ top
...
KiB Mem : 8169348 total, 6871440 free, 267096 used, 1030812 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 7607492 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
430 root 19 -1 122360 35588 23748 S 0.0 0.4 0:32.17 systemd-journal
1075 root 20 0 771860 22744 11368 S 0.0 0.3 0:38.89 snapd
1048 root 20 0 170904 17292 9488 S 0.0 0.2 0:00.24 networkd-dispat
1 root 20 0 78020 9156 6644 S 0.0 0.1 0:22.92 systemd
12376 azure 20 0 76632 7456 6420 S 0.0 0.1 0:00.01 systemd
12374 root 20 0 107984 7312 6304 S 0.0 0.1 0:00.00 sshd
...
- VIRT:进程虚拟内存的大小。只是要进程申请过的内存,即使没有真正分配物理内存,也会计算在内
- RES:常驻内存的大小。进程实际使用的物理内存大小,不包括Swap和共享内存
- SHR:共享内存的大小。与其它进程共同使用的共享内存、加载的动态链接库以及程序的代码段等
- %MEM:进程使用物理内存占系统总内存的百分比。