linux 内存信息_shell查看内存使用情况

linux 内存信息_shell查看内存使用情况pmaplddstace要熟悉的几个调试命令!两个查看内存的文件$cat/proc/<pid>/stat|awk'{print$23/1024}’$cat/proc/<pid>/status|grep-ivmsize其中,关于内存的是VSZ和RSS这两个概念manps看看它们的含义:rss       RSS    resident…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

pmap

ldd

stace

要熟悉的几个调试命令!

两个查看内存的文件

$ cat /proc/<pid>/stat | awk '{print $23 / 1024}'$ cat /proc/<pid>/status | grep -i vmsize

Jetbrains全家桶1年46,售后保障稳定

其中,关于内存的是 VSZ 和 RSS 这两个概念

man ps 看看它们的含义:

rss       RSS    resident set size, the non-swapped physical memory that a task has used (in kiloBytes). (alias rssize, rsz).

vsz       VSZ    virtual memory size of the process in KiB (1024-byte units). Device mappings are currently excluded; this is subject to change. (alias vsize).

观察到系统中的指定进程的地址空间分布情况显示一个目标文件或者链接库文件中的目标文件的各个段的大小。该文件从/proc//maps中获得数据。
命令格式:
pmap -x/-d  pid

 

范例:
[root@localhost security]# pmap -d 4993
4993: -bash
Address Kbytes Mode Offset Device Mapping
08047000 596 r-x– 0000000000000000 003:00006 bash bash的代码段
080dc000 28 rwx– 0000000000094000 003:00006 bash bash的数据段
080e3000 280 rwx– 00000000080e3000 000:00000 [ anon ] bash的堆
4d575000 84 r-x– 0000000000000000 003:00006 ld-2.3.4.so 共享库的代码段
4d58a000 4 r-x– 0000000000015000 003:00006 ld-2.3.4.so 共享库的数据段
4d58b000 4 rwx– 0000000000016000 003:00006 ld-2.3.4.so 共享库的堆
4d58e000 1164 r-x– 0000000000000000 003:00006 libc-2.3.4.so
4d6b1000 4 r-x– 0000000000123000 003:00006 libc-2.3.4.so
4d6b2000 12 rwx– 0000000000124000 003:00006 libc-2.3.4.so
4d6b5000 8 rwx– 000000004d6b5000 000:00000 [ anon ] 匿名物理内存,
4d6de000 8 r-x– 0000000000000000 003:00006 libdl-2.3.4.so
4d6e0000 8 rwx– 0000000000001000 003:00006 libdl-2.3.4.so
4d807000 12 r-x– 0000000000000000 003:00006 libtermcap.so.2.0.8
4d80a000 4 rwx– 0000000000002000 003:00006 libtermcap.so.2.0.8
b7bc2000 176 r-x– 0000000000000000 003:00006 GB18030.so
b7bee000 8 rwx– 000000000002b000 003:00006 GB18030.so
b7bf0000 24 r-xs- 0000000000000000 003:00006 gconv-modules.cache
b7bf6000 1060 r-x– 0000000002197000 003:00006 locale-archive
b7cff000 2048 r-x– 0000000000000000 003:00006 locale-archive
b7eff000 36 r-x– 0000000000000000 003:00006 libnss_files-2.3.4.so
b7f08000 8 rwx– 0000000000008000 003:00006 libnss_files-2.3.4.so
b7f0a000 8 rwx– 00000000b7f0a000 000:00000 [ anon ]
b7f20000 8 rwx– 00000000b7f20000 000:00000 [ anon ]
bff0d000 84 rw— 00000000bff0d000 000:00000 [ stack ]
ffffe000 4 —– 0000000000000000 000:00000 [ anon ]
mapped: 5680K writeable/private: 460K shared: 24K

每列的含义如下:
参数 解释
Address:00378000-0038d000 进程所占的地址空间
Kbytes 该虚拟段的大小
RSS 设备号(主设备:次设备)
Anon 设备的节点号,0表示没有节点与内存相对应
Locked 是否允许swapped
Mode 权限:r=read, w=write, x=execute, s=shared, p=private(copy on write)
Mapping: bash 对应的映像文件名


循环显示进程3066的设备格式的最后1行,间隔2秒,

[root@C44 ~]#  while true; do pmap -d  3066 | tail -1; sleep 2; done

mapped: 5412K    writeable/private: 2028K    shared: 0K

mapped: 5412K    writeable/private: 2028K    shared: 0K

mapped: 5412K    writeable/private: 2028K    shared: 0K

mapped: 5412K    writeable/private: 2028K    shared: 0K

mapped: 5412K    writeable/private: 2028K    shared: 0K

mapped: 5412K    writeable/private: 2028K    shared: 0K

mapped: 5412K    writeable/private: 2028K    shared: 0K

mapped: 5412K    writeable/private: 2028K    shared: 0K

mapped: 5412K    writeable/private: 2028K    shared: 0K

mapped: 5412K    writeable/private: 2028K    shared: 0K

mapped: 5412K    writeable/private: 2028K    shared: 0K

mapped: 5412K    writeable/private: 2028K    shared: 0K

mapped: 5412K    writeable/private: 2028K    shared: 0K

内存泄露脚本:

memleak.sh:

#!/bin/sh   

i=1   


until [ ! “$i” -le 10 ]   


do  


        val=$(pidof converter)


        if [ -z “$val” ]; then


        ret=$(pmap -d $val | tail -1)


        fi


        mytime=$(date “+%Y-%m-%d %H:%M:%S”)


        filetime=$(date “+%Y-%m-%d”)


        echo “[$mytime] [$ret]” >> memleak_$filetime.leak


        sleep 5


done

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/219237.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux下tar解压到当前目录,zip压缩,tar压缩,tar解压[通俗易懂]

    Linux下tar解压到当前目录,zip压缩,tar压缩,tar解压[通俗易懂]很多时候我们需要把文件解压到当前目录,命令如下:tar-zxvfvscode-server-linux-x64.tar.gz-C./有时候很讨厌,因为tar.gz的包里就存在一个与压缩包同名的目录,这种情况的话需要先解压,再拷贝:tar-zxvfvscode-server-linux-x64.tar.gz-C./mvvscode-server-linux-x64/*….

    2022年5月11日
    72
  • 【工具使用】应用层DNS协议工具—iodine

    【工具使用】应用层DNS协议工具—iodine0x01iodine 工具介绍 iodine 工具是基于 C 语言开发的 分为服务端程序 iodined 和客户端 iodine iodine 支持 EDNS base32 base64 base128 等多种编码规范 iodine 支持转发模式和中继模式 iodine 原理 通过 TAP 虚拟网卡 在服务端建立一个局域网 在客户端 通过 TAP 建立一个虚拟网卡 两者通过 DNS 隧道连接 处于同一局域网 可以通过 ping 命令通信 在客户端和服务端之间建立连接后 客户机上会多出一块 dns0 的虚拟网卡 DNS 隧道

    2025年6月21日
    3
  • c语言入门教程–-17结构体

    c语言入门教程–-17结构体

    2021年3月12日
    216
  • R语言画图时常见问题

    各位朋友,我已开通微信公共号:小程在线我会把文章及时的更新到公共号上,欢迎大家的关注。1如何在同一画面画出多张图?修改绘图参数,如par(mfrow=c(2,2))或par(mfcol=c(2,2));par():mar设置图离四个边缘的距离;bg设置背景颜色;xaxt和yaxt设置坐标轴标签的类型(=”n”表示不画轴标签);xlim和ylim设置坐标轴的范围…

    2022年4月7日
    30
  • 十款常用Linux系统介绍「建议收藏」

    十款常用Linux系统介绍「建议收藏」你可曾知道Linux的魅力或威力来自哪里?那就是,由于众多发行版百花齐放,Linux的阵营日益壮大,每一款发行版都拥有一大批用户,开发者自愿为相关项目投入精力。Linux发行版可谓是形形色色,它们旨在满足每一种能想得到的需求。本文就是为了简述某一款发行版为何存在、该发行版的目标用户是哪些,以及它与其他发行版相比有什么样的特殊功能。1.DebianDebian运行起来极其稳定,这使得它非常…

    2022年6月7日
    87
  • centos防火墙配置「建议收藏」

    centos防火墙配置「建议收藏」centos防火墙配置1.centos中firewalld与iptablescentos7以前的版本默认使用iptables服务进行管理防火墙规则。centos7以及其以上版本默认使用firewalld服务管理防火墙。所以在centos8中,就使用其默认的firewalld配置防火墙。2.firewalld相关命令进程与状态相关systemctlstartfirewalld.service#启动防火墙systemctlstopfirewalld.servic

    2022年6月26日
    27

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号