统计系统中所有进程占用内存的方法
统计系统中所有进程所占用的内存的方法
一、首先先来看proc中对应的两个文件,/proc/[pid]/status和/proc/[pid]/statm;
/proc/[pid]/statm的显示如下:
对应的各个参数的含义为:(单位是页,一页为4KB;与status文件中的各个参数相对应)
statm | 含义 | 对应status参数 |
---|---|---|
Size (pages) | 任务虚拟地址空间的大小 | VmSize/4 |
Resident(pages) | 应用程序正在使用的物理内存的大小 | VmRSS/4 |
Shared(pages) | 共享页数 | |
Trs(pages) | 程序所拥有的可执行虚拟内存的大小 | VmExe/4 |
Lrs(pages) | 被映像到任务的虚拟内存空间的库的大小 | VmLib/4 |
Drs(pages) | 程序数据段和用户态的栈的大小 | (VmData+ VmStk )/4 |
Dt(pages) | 脏页数量 |
与之相对应的文件为:proc/[pid]/status,包含了该进程的基本上所有的有用信息统计
二、统计系统中所有进程的物理内存使用情况
基本思路:遍历/proc下所有的进程,并提取statm下的第二列数据相加,得到所有进程使用的物理页情况,最终乘以4即内存使用情况(KB为单位),脚本代码如下:
#/bin/bash
for PROC in `ls /proc/|grep "^[0-9]"`
doif [ -f /proc/$PROC/statm ]; then //遍历整个proc下的进程TEP=`cat /proc/$PROC/statm | awk '{print ($2)}'` //提取每个进程的statm第二列数据RSS=`expr $RSS + $TEP` //逐个相加fi
done
RSS=`expr $RSS \* 4` //将单位为页转换为KB
echo $RSS"KB"
统计系统中所有进程占用内存的方法相关推荐
- antimalware service executable占用内存过高_Win10系统svchost.exe进程占用内存和网速过高的解决方法...
我们在使用Windows10系统的过程中,不少用户一旦发现电脑异常,例如异常卡顿,就会查看一下任务管理器,是否有进程过高占用了CPU.内存.网络等,而在任务管理器中发现了一个名称为"svch ...
- linux中yum进程占cpu百分之九十,在Deepin Linux系统中kworker进程占用CPU达到100%的解决...
如果你在Deepin Linux.Debian.Ubuntu系统中遇到kworker进程占用CPU达到100%,可以用以下解决方法解决问题,本文主要内容为问题起因.microcode介绍.解决方法及总 ...
- jdb2 mysql io_CentOS 6.4系统中jdb2进程占用io过高的解决方法
某日在检测一系统性能时,发现io性能总是无故被消耗,即使应用程序很空闲,io使用程度也 很高. 使用iotop工具查看io情况. Total DISK READ: 0.00 B/s | Total D ...
- 解决linux 系统中Mysql 进程占用CPU 300%故障
今日接到同事的电话,说微信公共帐号中的游戏无法登陆,用户不能玩了,麻烦尽快解决. 1.登陆IDC机房查看服务器流量图,流量正常,排除故障与流量无关. 2.登陆微信公共帐号中的游戏所在服务器发现系统互载 ...
- linux的mysql占用cpu过高_linux 系统中Mysql 进程占用cpu过高的解决
mysql进程CPU使用率过高,开始报警了. 为了快速解决问题直接重启mysql服务后,再查sysql进程CPU使用率依旧高居不下.故障还没有解决,继续寻找原因. 3.登陆mysql数据库,执行sho ...
- linux:进程占用的端口,在linux中查看进程占用的端口号
在Linux 上的 /etc/services 文件可以查看到更多关于保留端口的信息. 可以使用以下六种方法查看端口信息. ss:可以用于转储套接字统计信息. netstat:可以显示打开的套接字列表 ...
- 查看linux每个进程占用内存多少,Linux下如何查看哪个进程占用内存多?
1.top top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器 可以直接使用top命令后,查看%MEM的内容.可以选择按进程查看或者 ...
- Android系统中的进程管理:内存的回收
本文是Android系统进程管理的第三篇文章.进程管理的前面两篇文章,请参见这里: Android系统中的进程管理:进程的创建 Android系统中的进程管理:进程的优先级 本文适合Android平台 ...
- 9.7 top:实时显示系统中各个进程的资源占用状况
top命令 用于实时地对系统处理器状态进行监控,它能够实时地显示系统中各个进程的资源占用状况.该命令可以按照CPU的使用.内存的使用和执行时间对系统任务进程进行排序显示,同时top命令还可以通过交互式 ...
- wsappx关不掉_win10系统下wsappx.exe进程占用内存大能关闭吗
有不少win10系统用户在查看任务管理器的时候,发现有一个wsappx.exe进程占用内存大,但是又不知道wsappx.exe是什么进程,可以关闭吗?针对这个问题,小编这就给大家讲解一下win10系统 ...
最新文章
- reduction_indices的用法
- python简单爬虫手机号_python手机号前7位归属地爬虫代码实例
- 一次系统调用开销到底有多大?
- 【腾讯优测干货分享】从压测工具谈并发、压力、吞吐量
- oopc——2.类与对象
- php安装扩展写kafca,安装PHP的kafka扩展
- 使用Acronis Disk Director Suite调整分区大小
- Coding List
- 不得不收藏的大数据Hadoop教程:Hadoop集群搭建
- Windows远程桌面及其相关问题
- 数学建模之微分方程模型详解
- C语言读写txt文件
- Jenkins build light on Windows, with Blinky
- 西班牙语笔记(内附如何练习弹舌)
- prng伪随机数生成器_Java伪随机数生成器(PRNG)中的弱点
- 技能分享 | 麦肯锡教给我的写作武器:连接词是文章通顺的灵魂
- 欧洲城市之最:伦敦被评为欧洲最脏城市 巴黎最不友善
- Java 从键盘输入数据到一维double数组中
- Ubuntu开机一直滚屏 关键词:pcieport.......
- 2024浙江大学计算机考研信息汇总