Linux内存管理 (26)内存相关工具

 

1. vmstat

参照《Linux CPU占用率监控工具小结-vmstat

2. memstat

memstat可以通过sudo apt install memstat安装,安装包括两个文件memstat和memstat.conf。

其中memstat.conf是memstat配置文件,指定memstat检索目录,里面应该包括主要的bin和lib目录。

memstat通过遍历/proc下所有进程,然后解析内存使用情况。

通过对比可以发现,memstat不会统计内核线程的内存使用情况,同时memstat也不会统计所有设备使用的内存。

2.1 memstat使用

memstat使用很简单:

memstat - 显示整个系统内存使用情况。

memstat -p pid - 显示进程pid的内存使用情况。

 

2.2 memstat解读

下面是一嵌入式设备的memstat情况,和ps对照可以看出不显示内核线程占用情况。

总体来看分为两大部分:进程视角、文件视角。

# memstat
    288k: PID     1 (/bin/busybox)-----------------------------------------------------进程可执行文件内存占用
    476k: PID   147 (/usr/sbin/sshd)
    288k: PID   153 (/bin/busybox)
    288k: PID   154 (/bin/busybox)
    288k: PID   210 (/usr/bin/memstat)
    784k(    760k): /bin/busybox 1 153 154 1 153 154 1 153 154-------------------------共享库内存占用情况
     52k(     36k): /lib/libnss_files-2.28.9000.so 147 154 147 154 147 154
     16k(      8k): /lib/libutil-2.28.9000.so 147
     36k(     28k): /lib/libcrypt-2.28.9000.so 147
   1272k(   1192k): /lib/libc-2.28.9000.so 1 147 153 154 210 1 147 153 154 2...
    156k(    116k): /lib/ld-2.28.9000.so 1 147 153 154 210 1 147 153 154 210...
     16k(      8k): /lib/libdl-2.28.9000.so 147
    708k(    696k): /usr/sbin/sshd 147
   1460k(   1364k): /usr/lib/libcrypto.so.1.0.0 147
     80k(     72k): /usr/lib/libz.so.1.2.11 147
     16k(      8k): /usr/bin/memstat 210
--------
   6224k (   4288k)

 

2.2.1 bin内存占用

依次是占用内存大小、pid号、文件路径。

这里的大小不包括库文件,也不包括可执行文件的text段,只是进程私有内存大小。

2.2.3 库内存占用

依次是此文件总的分配内存、括号内是共享部分大小、然后是库路径、最后是使用此库文件的进程号。

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值