linux下使用脚本实现对进程的内存占用自动化监测

linux系统中常用cat /proc/{pid}/status 和**pmap -x {pid}**来监测某个进程的内存资源占用情况。

其中注意各参数的含义如下:

VmSize:表示进程当前虚拟内存大小

VmPeak:表示进程所占用最大虚拟内存大小

VmRSS:表示进程当前占用物理内存的大小(与procrank中的RSS,pmap中的RSS一样)

VmLck:表示被锁定的内存大小

VmHWM:表示进程所占用物理内存的峰值

VmData:表示进程数据段的大小

VmStk:表示进程堆栈段的大小

VmExe:表示进程代码的大小

VmLib:表示进程所使用共享库的大小

VmPTE:表示进程页表项的大小

监测简本如下:

bash 复制代码
#!/bin/sh

#根据程序名获取pid信息
process_name=$1
pid=$(pidof $process_name)

echo "Memory monitor process script running..."

#开始周期性的监测,pmap和cat效果差不多
while true
do
pmap -x $pid
#cat /proc/$pid/status
sleep 10
done
相关推荐
屿行屿行4 小时前
【Linux】Socket编程(基于实际工程分析)
linux·服务器·网络
天才程序YUAN4 小时前
从零开始、保留 Windows 数据、安装Ubuntu 22.04 LTS双系统
linux·windows·ubuntu
Evan芙4 小时前
Rocky Linux 9 网卡改名及静态IP地址配置完整步骤
linux·网络·智能路由器
Zeku5 小时前
20251125 - 韦东山Linux第三篇笔记【上】
linux·笔记·单片机
企鹅侠客5 小时前
Linux性能调优 详解磁盘工作流程及性能指标
linux·运维·服务器·性能调优
icy、泡芙5 小时前
TF卡---热插拔
linux·驱动开发
企鹅侠客5 小时前
Linux性能调优 再谈磁盘性能指标和进程级IO
linux·运维·服务器·性能调优
wdfk_prog6 小时前
[Linux]学习笔记系列 -- [block][mq-deadline]
linux·笔记·学习
不过普通话一乙不改名6 小时前
Linux 网络收包的进阶之路:从普通 socket 到 AF_XDP 零拷贝
linux·运维·网络
Zeku6 小时前
20251125 - 韦东山Linux第三篇笔记【中】
linux·驱动开发