(1)top使命

代码如下

$ top -u oracle

1、top命令

代码如下

top -d 1 -p pid [,pid ...] //设置为delay 1s,默认是delay 3s

如果想根据内存使用量进行排序,可以shift + m(Sort by memory usage)

(2)pmap

可以根据进程查看进程相关信息占用的内存情况,(进程号可以通过ps查看)如下所示:

代码如下

$ pmap -d 14596

(3)ps

如下例所示:

代码如下

$ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid'  其中rsz是是实际内存

$ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' | grep oracle |  sort -nrk5

其中rsz为实际内存,上例实现按内存排序,由大到小

静态查看一个进程的内存使用

1、pmap命令

代码如下

pmap pid

2、ps命令

代码如下

ps aux|grep process_name

3、查看/proc/process_id/文件夹下的status文件

代码如下

Name:   php

State:  R (running)

SleepAVG:       0%

Tgid:   21574

Pid:    21574

PPid:   10005

TracerPid:      0

Uid:    1000    1000    1000    1000

Gid:    100     100     100     100

FDSize: 256

Groups: 16 100

VmPeak:   161740 kB

VmSize:   161740 kB

VmLck:         0 kB

VmHWM:    107144 kB

VmRSS:    107144 kB

VmData:   106192 kB

VmStk:        84 kB

VmExe:      5588 kB

VmLib:      7884 kB

VmPTE:       268 kB

Threads:        1

SigQ:   0/69632

SigPnd: 0000000000000000

ShdPnd: 0000000000000000

SigBlk: 0000000000000000

SigIgn: 0000000000001000

SigCgt: 00000001818040a7

CapInh: 0000000000000000

CapPrm: 0000000000000000

CapEff: 0000000000000000

Cpus_allowed:   00000000,00000000,00000000,0000000f

Mems_allowed:   1

任务虚拟地址空间的大小 VmSize

应用程序正在使用的物理内存的大小 VmRSS

查看内存我们一般用free命令:

代码如下

[root@scs-2 tmp]# free

total       used       free     shared    buffers     cached

Mem:       3266180    3250004      16176          0     110652    2668236

-/+ buffers/cache:     471116    2795064

Swap:      2048276      80160    1968116

下面是对这些数值的解释:

total:总计物理内存的大小。

used:已使用多大。

free:可用有多少。

Shared:多个进程共享的内存总额。

Buffers/cached:磁盘缓存的大小。

第三行(-/+ buffers/cached):

used:已使用多大。

free:可用有多少。

第四行就不多解释了。

区别:第二行(mem)的used/free与第三行(-/+ buffers/cache) used/free的区别。 这两个的区别在于使用的角度来看,第一行是从OS的角度来看,因为对于OS,buffers/cached 都是属于被使用,所以他的可用内存是16176KB,已用内存是3250004KB,其中包括,内核(OS)使用+Application(X, oracle,etc)使用的+buffers+cached.

第三行所指的是从应用程序角度来看,对于应用程序来说,buffers/cached 是等于可用的,因为buffer/cached是为了提高文件读取的性能,当应用程序需在用到内存的时候,buffer/cached会很快地被回收。

占用内存的测量

测量一个进程占用了多少内存,linux为我们提供了一个很方便的方法,/proc目录为我们提供了所有的信息,实际上top等工具也通过这里来获取相应的信息。

代码如下

/proc/meminfo 机器的内存使用信息

/proc/pid/maps pid为进程号,显示当前进程所占用的虚拟地址。

/proc/pid/statm 进程所占用的内存

[root@localhost ~]# cat /proc/self/statm

654 57 44 0 0 334 0

输出解释

CPU 以及CPU0。。。的每行的每个参数意思(以第一行为例)为:

参数 解释 /proc//status

代码如下

Size (pages) 任务虚拟地址空间的大小 VmSize/4

Resident(pages) 应用程序正在使用的物理内存的大小 VmRSS/4

Shared(pages) 共享页数 0

Trs(pages) 程序所拥有的可执行虚拟内存的大小 VmExe/4

Lrs(pages) 被映像到任务的虚拟内存空间的库的大小 VmLib/4

Drs(pages) 程序数据段和用户态的栈的大小 (VmData+ VmStk )4

dt(pages) 04

查看机器可用内存

代码如下

/proc/28248/>free

total used free shared buffers cached

Mem: 1023788 926400 97388 0 134668 503688

-/+ buffers/cache: 288044 735744

Swap: 1959920 89608 1870312

我们通过free命令查看机器空闲内存时,会发现free的值很小。这主要是因为,在linux中有这么一种思想,内存不用白不用,因此它尽可能的cache和buffer一些数据,以方便下次使用。但实际上这些内存也是可以立刻拿来使用的。

所以 空闲内存=free+buffers+cached=total-used

linux查看所有进程占用内存命令,LINUX进程内存占用查看命令相关推荐

  1. Linux 查看占用资源cpu、内存最大的进程命令

    第一种方法: 1.详细查询命令: 查看cpu最大进程,或者内存最大进程. #CPU ps aux|head -1;ps aux|grep -v PID|sort -rn -k 3|head #内存 p ...

  2. Linux查看占用内存最高的进程

    可以直接使用top命令后,查看%MEM的内容.可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令: (1) top top命令是Linux下常用的性能分 ...

  3. 查看linux每个进程占用内存多少,Linux下如何查看哪个进程占用内存多?

    1.top top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器 可以直接使用top命令后,查看%MEM的内容.可以选择按进程查看或者 ...

  4. linux关闭端口进程命令,windows Linux 下命令行查看端口占用情况并且关闭进程

    1.查看端口占用 > netstat -aon | findstr "80" 结果: TCP    0.0.0.0:80             0.0.0.0:0     ...

  5. linux查看内存、CPU占用资源最多的进程

    [内存占用] #利用ps命令,默认使用ps参数会显示的结果 ps -aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 ...

  6. Top 命令 如何查看linux系统中空闲内存/物理内存使用/剩余内存

    1.top命令 top前5行统计信息 ** 第一行: top - 13:59:30 up 15 days, 4:53, 2 users, load average: 1.31, 1.62, 1.41 ...

  7. linux查看设备内存代码,Linux下内存查看命令(示例代码)

    在Linux下面,我们常用top命令来查看系统进程,top也能显示系统内存.我们常用的Linux下查看内容的专用工具是free命令. Linux下内存查看命令free详解: 在Linux下查看内存我们 ...

  8. Linux 命令之 ps -- 显示进程状态/查看进程信息

    文章目录 介绍 语法格式 常用选项 命令示例 示例 1,查看进程的 PID.名称以及 CPU 占用率 示例 2,查看所有的进程 示例 3,按内存资源的使用量对进程进行排序 示例 4,按 CPU 资源的 ...

  9. linux查看进程运行日志文件,【Linux】常用指令、ps查看进程、kill杀进程、启动停止tomcat命令、查看日志、查看端口、find查找文件...

    1.说出 10 个 linux 常用的指令 1) ls 查看目录中的文件 2)cd /home 进入 '/ home' 目录:cd .. 返回上一级目录:cd ../.. 返回上两级目录 3)mkdi ...

最新文章

  1. CentOS创建快捷按钮并设置文件图标
  2. C++——构造函数析构函数
  3. linux——管理系统设备之vsftpd服务
  4. python 笔试题 英方_经典算法题 :找字符串中的逆序对(百度笔试题)
  5. mysql_常用命令
  6. 二叉堆时间复杂度 php,二叉堆(Binary Heap)
  7. Qt工作笔记-QLineEdit中使用setValidator里面的坑
  8. 震惊!原来leetcode竟然真的能中奖?
  9. Vue:You may use special comments to disable some warnings.
  10. java提高代码质量的小技巧,10个 Javascript 小技巧帮你提升代码质量
  11. Kafka_Zookeeper_环境搭建使用
  12. 如何手动释放linux内存的方法,centos手动释放内存的方法
  13. 深入解读Linux内存管理系列(7)——伙伴系统
  14. PI3HDX1204B
  15. 免费——离散数学(左孝凌)课后习题答案
  16. 经典50道SQL练习题
  17. macOS 使用软件(外加装逼特效)
  18. 如何深入学习c语言,如何深入学习C语言?
  19. win10系统重装教程
  20. 教你如何拔取百度地图POI兴趣点

热门文章

  1. 腾讯娱乐讯 由葫芦兄弟改编的现代神话剧《金刚葫芦侠》第
  2. 封装:基于FFmpeg开发的视频转换、剪切工具
  3. 器材摄影师与框架程序员
  4. 易语言调用大漠插件制作游戏脚本的教程
  5. matlab 循环和判断语句,matlab的if循环语句
  6. Java快速实现判断输入内容的类型
  7. Linux中使用命令行删除目录
  8. 影视php解析api,【3/3日更新】影视解析接口分享
  9. 健身蓝牙耳机推荐,推荐五款适合健身的蓝牙耳机
  10. 黑客与画家---设计者的品味