Linux内存查看工具---Smem

转载 2017年12月11日 00:00:00

物理内存不足对Linux桌面系统和服务器系统的性能影响都很大。当你的计算机变慢时,要做的第一件事就是释放内存。尤其是在多用户环境以及执行关键任务的服务器环境下,内存消耗会变得更加关键,因为多个用户和应用线程会同时竞争更多的内存空间。

如果要监测系统内各种资源的使用情况(比如说CPU或内存),图形化显示是一种高效的方法,通过图形界面可以快速分析各用户和进程的资源消耗情况。在linux下图形化分析内存使用情况的方法,使用到命令行工具是smem.


物理内存使用情况: RSS PSS USS

由于Linux使用到了虚拟内存(virtual memory),因此要准确的计算一个进程实际使用的物理内存就不是那么简单。 只知道进程的虚拟内存大小也并没有太大的用处,因为还是无法获取到实际分配的物理内存大小。

·  RSS(Residentset size),使用top命令可以查询到,是最常用的内存指标,表示进程占用的物理内存大小。但是,将各进程的RSS值相加,通常会超出整个系统的内存消耗,这是因为RSS中包含了各进程间共享的内存。

·  PSS(Proportionalset size)会更准确一些,它将共享内存的大小进行平均后,再分摊到各进程上去。

·  USS(Unique set size )是PSS中自己的部分,它只计算了进程独自占用的内存大小,不包含任何共享的部分。


常用参数

$ smem

默认情况下,如果不带参数,将显示所有进程的内存使用情况,而且是一次显示,不是动态显示。

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1


$ smem -m

显示每个库使用内存的情况

0?wx_fmt=jpeg

$ smem -p | grepfirefox

按百分比显示使用情况

0?wx_fmt=jpeg


$ smem -u -p

按用户统计使用情况

0?wx_fmt=jpeg


图形结果

如果你使用的图形界面,还可以生成图形结果

圆饼图

smem --pie name -s uss

0?wx_fmt=jpeg


柱状图

smem --bar pid -c “pss uss rss”

0?wx_fmt=jpeg


0?wx_fmt=jpeg


smem – Linux 内存监视软件

导读 Linux 系统的内存管理工作中,内存使用情况的监控是十分重要的,在各种 Linux 发行版上你会找到许多这种工具。它们的工作方式多种多样,在这里,我们将会介绍如何安装和使用这样的一个名为 sm...
  • Jack__CJ
  • Jack__CJ
  • 2016年09月02日 21:07
  • 725

Linux 下几款程序内存泄漏检查工具

写这篇博客的原因呢是因为自己在编写基于Nginx磁盘缓存管理程序,目前已经进入测试阶段,关于这个程序的测试分为几个主要步骤:1.内存管理是否正确(因为这个程序本身开辟很多内存空间进行缓存管理,同时这个...
  • youbingchen
  • youbingchen
  • 2016年07月23日 10:15
  • 7677

Linux下几款C++程序中的内存泄露检查工具

Linux下编写C或者C++程序,有很多工具,但是主要编译器仍然是gcc和g++。最近用到STL中的List编程,为了检测写的代码是否会发现内存泄漏,了解了一下相关的知识。所有使用动态内存分配(dyn...
  • gatieme
  • gatieme
  • 2016年07月19日 21:56
  • 11437

linux下分析Java程序内存汇总

使用pmap查看进程内存 运行命令 使用pmap可以查看某一个进程(非java的也可以)的内存使用使用情况, 命令格式: pmap 进程id 示例说明 例如运行: pmap 12358 ...
  • zlzlei
  • zlzlei
  • 2015年06月12日 16:31
  • 16869

Window内存详解(五) VMMAP内存查看工具

下面我根据VMMap来详细介绍一下内存的分类。 内存是一个很复杂的系统,其中的paging file,sharable memory,reserve和commit等概念使得要算清楚一个进程到底使...
  • woddle
  • woddle
  • 2015年04月28日 16:30
  • 2676

如何查看linux系统中空闲内存/物理内存使用/剩余内存

查看linux系统中空闲内存/物理内存使用/剩余内存 查看系统内存有很多方法,但主要的是用top命令和free 命令 当执行top命令看到结果,要怎么看呢?这里说明一下: Mem: 66...
  • u011341352
  • u011341352
  • 2016年12月14日 10:37
  • 11178

Linux 内存泄露检测技巧

由于 C 和 C++ 程序中完全由程序员自主申请和释放内存,稍不注意,就会在系统中导入内存错误。同时,内存错误往往非常严重,一般会带来诸如系统崩溃,内存耗尽这样严重的后果。无论何时何地发生内存泄漏,都...
  • u010193457
  • u010193457
  • 2015年10月16日 11:44
  • 2771

linux查看cpu 内存运行状态命令

原文地址:http://www.360doc.com/content/11/0505/00/2104556_114442966.shtml 参考http://www.cnblogs.com/xd50...
  • zhengqiqiqinqin
  • zhengqiqiqinqin
  • 2013年11月26日 17:17
  • 29188

LINUX下如何查看内存品牌和速率啊?

背景:想加个内存,Mysql服务器上的内存不够了,就算可以插(插槽都有,现在是4条4G内存,还有空闲八个槽。),不知道兼不兼容,否则不稳定的,不兼容的话,死的更惨,这个不一定了,停产了,就没有办法了。...
  • u013870094
  • u013870094
  • 2017年04月07日 11:06
  • 1772

linux下使用free命令查看实际内存占用(可用内存)

转:http://blog.is36.com/linux_free_command_for_memory/   linux下在终端环境下可以使用free命令看到系统实际使用内存的情况,一般...
  • guolong1983811
  • guolong1983811
  • 2016年12月05日 23:04
  • 9851
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Linux内存查看工具---Smem
举报原因:
原因补充:

(最多只允许输入30个字)