Linux下查看某一个程序运行所占用的内存
来源:互联网 发布:cs go 优化参数 编辑:程序博客网 时间:2024/06/05 03:01
第一种方式
top -p 进程号
[yzy@node3 micro-service]$ top -p 20490top - 16:50:32 up 6 days, 2:18, 1 user, load average: 0.00, 0.01, 0.05Tasks: 1 total, 0 running, 1 sleeping, 0 stopped, 0 zombie%Cpu(s): 0.1 us, 0.1 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 stKiB Mem : 65876972 total, 51899292 free, 9988408 used, 3989272 buff/cacheKiB Swap: 32964604 total, 32964604 free, 0 used. 55522228 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 20490 yzy 20 0 113252 1632 1272 S 0.0 0.0 0:35.50 sh
第二种方式
ps -aux | grep 进程名
[zhoulu@node3 micro-service]$ ps -aux | grep eureka-auto.sh zhoulu 3716 0.0 0.0 112640 972 pts/0 S+ 16:49 0:00 grep --color=auto eureka-auto.shzhoulu 20490 0.0 0.0 113252 1632 ? S Apr14 0:35 /bin/sh ./eureka-auto.sh
第三种方式
cat /proc/进程号/status
[zhoulu@node3 micro-service]$ cat /proc/20490/statusName: shState: S (sleeping)Tgid: 20490Ngid: 0Pid: 20490PPid: 1TracerPid: 0Uid: 1019 1019 1019 1019Gid: 1019 1019 1019 1019FDSize: 256Groups: 1019 VmPeak: 113256 kBVmSize: 113252 kBVmLck: 0 kBVmPin: 0 kBVmHWM: 1632 kBVmRSS: 1632 kBVmData: 340 kBVmStk: 136 kBVmExe: 884 kBVmLib: 2044 kBVmPTE: 52 kBVmSwap: 0 kBThreads: 1SigQ: 0/257254SigPnd: 0000000000000000ShdPnd: 0000000000000000SigBlk: 0000000000010000SigIgn: 0000000000000005SigCgt: 0000000000010002CapInh: 0000000000000000CapPrm: 0000000000000000CapEff: 0000000000000000CapBnd: 0000001fffffffffSeccomp: 0Cpus_allowed: ffffCpus_allowed_list: 0-15Mems_allowed: 00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000001Mems_allowed_list: 0voluntary_ctxt_switches: 102189nonvoluntary_ctxt_switches: 170
VmSize(KB) 任务虚拟地址空间的大小 (total_vm-reserved_vm),其中total_vm为进程的地址空间的大小,reserved_vm:进程在预留或特殊的内存间的物理页
VmLck(KB) 任务已经锁住的物理内存的大小。锁住的物理内存不能交换到硬盘 (locked_vm)
VmRSS(KB) 应用程序正在使用的物理内存的大小,就是用ps命令的参数rss的值 (rss)
VmData(KB) 程序数据段的大小(所占虚拟内存的大小),存放初始化了的数据; (total_vm-shared_vm-stack_vm)
VmStk(KB) 任务在用户态的栈的大小 (stack_vm)
VmExe(KB) 程序所拥有的可执行虚拟内存的大小,代码段,不包括任务使用的库 (end_code-start_code)
VmLib(KB) 被映像到任务的虚拟内存空间的库的大小 (exec_lib)
VmPTE 该进程的所有页表的大小,单位:kb
Threads 共享使用该信号描述符的任务的个数,在POSIX多线程序应用程序中,线程组中的所有线程使用同一个信号描述符
1、VmRSS是真实正在占用的内存,而VmData是虚拟内存,大小差异大并没有什么问题。
2、VmData是指数据段的内存大小,存放初始化了的数据; (total_vm-shared_vm-stack_vm)
3、不调动态库的时候是不计算的(dlopen方式)
4、静态库会编译为程序本身的一部分,不在VmLib的统计之内。
5、参考上面的说明
6、除非有非常明显的内存泄露,如内存一直大幅度增长并长时间不释放,否则单纯以来这些值是很判断真正的内在泄露。
- Linux下查看某一个程序运行所占用的内存
- Linux下查看某一个程序运行所占用的内存
- Linux 下查看某一个程序所使用的内存
- Linux 查看某一个进程占用内存情况
- Linux下查看程序内存占用
- linux下查看线程-以及查看所占用的cpu
- 在linux下查看程序所占用的端口号进程号
- VC6.0下怎样查看程序的运行时间及内存占用情况
- Linux下查看某个进程所占用的资源
- Linux下程序的内存占用
- 进程运行时,所占用的内存
- 查看系统程序所占用的端口
- Linux下评估程序运行时间及内存占用情况的简便方法
- 如何在linux中查看程序占用的内存
- vc下获取程序的运行时间和占用内存
- linux/ubuntu下free查看内存占用大的解释
- Linux下查看进程占用内存的最好方式
- Java所编写的程序在运行的时候占用内存是否真的很大了?
- 自己使用es和solr感想
- 剑指offer 最小的K个数
- 零起点学算法71——C语言合法标识符(个人错误总结)
- hdu 2050折线分割平面(递推找规律)
- 商品展示案例
- Linux下查看某一个程序运行所占用的内存
- gSoap客户端调用WebService完成后注意内存释放顺序
- js刷新页面方法大全
- iOS 音乐播放器demo讲解
- Redux大法好
- 欢迎使用CSDN-markdown编辑器
- 进制转换
- 题目1133:学分绩点
- Android Studio设置自动导包及删除无用包