成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linux下找出吃內存的方法總結

系統 Linux
Linux下查詢進程占用的內存方法總結,假設現在有一個「php-cgi」的進程 ,進程id為「25282」。現在想要查詢該進程占用的內存大小。linux命令行下有很多的工具進行查看,現總結常見的幾種方式。

 Linux下查詢進程占用的內存方法總結,假設現在有一個「php-cgi」的進程 ,進程id為「25282」。現在想要查詢該進程占用的內存大小。linux命令行下有很多的工具進行查看,現總結常見的幾種方式。

通過進程的 status

  1. [root@web3_u ~]# cat /proc/25282/status  
  1. Name: php-cgi  
  2. State: S (sleeping)  
  3. Tgid: 25282  
  4. Pid: 25282  
  5. PPid: 27187  
  6. TracerPid: 0  
  7. Uid: 99 99 99 99  
  8. Gid: 99 99 99 99  
  9. Utrace: 0  
  10. FDSize: 256  
  11. Groups: 99  
  12. VmPeak: 496388 kB  
  13. VmSize: 438284 kB  
  14. VmLck: 0 kB  
  15. VmHWM: 125468 kB  
  16. VmRSS: 113612 kB  
  17. VmData: 92588 kB  
  18. VmStk: 100 kB  
  19. VmExe: 6736 kB  
  20. VmLib: 18760 kB  
  21. VmPTE: 528 kB  
  22. VmSwap: 0 kB  
  23. Threads: 1  
  24. SigQ: 0/46155  
  25. SigPnd: 0000000000000000  
  26. ShdPnd: 0000000000000000  
  27. SigBlk: 0000000000000000  
  28. SigIgn: 0000000000001000  
  29. SigCgt: 0000000184000004  
  30. CapInh: 0000000000000000  
  31. CapPrm: 0000000000000000  
  32. CapEff: 0000000000000000  
  33. CapBnd: ffffffffffffffff  
  34. Cpus_allowed: f  
  35. Cpus_allowed_list: 0-3  
  36. Mems_allowed: 00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000001 
  37. Mems_allowed_list: 0  
  38. voluntary_ctxt_switches: 68245  
  39. nonvoluntary_ctxt_switches: 15751 

VmRSS: 113612 kB 表示占用的物理內存

通過 pmap

  1. [root@web3_u ~]# pmap -x 25282 
  1. 25282: /usr/local/php/bin/php-cgi --fpm --fpm-config /usr/local/php/etc/php-fpm.conf  
  2. Address Kbytes RSS Dirty Mode Mapping  
  3. 0000000000400000 6736 2692 0 r-x-- php-cgi  
  4. 0000000000c93000 264 196 120 rw--- php-cgi 
  5. 0000000000cd5000 60 48 48 rw--- [ anon ]  
  6. . . .  
  7. 00007fd6226bc000 4 4 4 rw--- ld-2.12.so  
  8. 00007fd6226bd000 4 4 4 rw--- [ anon ]  
  9. 00007fff84b02000 96 96 96 rw--- [ stack ]  
  10. 00007fff84bff000 4 4 0 r-x-- [ anon ]  
  11. ffffffffff600000 4 0 0 r-x-- [ anon ]  
  12. ---------------- ------ ------ ------  
  13. total kB 438284 113612 107960 

關鍵信息點

1、進程ID

2、啟動命令「/usr/local/php/bin/php-cgi --fpm --fpm-config /usr/local/php/etc/php-fpm.conf」

3、RSS :占用的物理內存 113612KB

通過 smaps 

  1. [root@web3_u ~]# cat /proc/25282/smaps | grep '^Rss:' \  
  2. | awk '{sum +=$2} END{print sum}' 
  3. 113612 

求和得到實際占用物理內存為 113612

通過 ps 命令 

  1. [root@web3_u ~]# ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' \  
  2. | awk '$1 ~ /25282/'  
  3. 25282 php-cgi /usr/local/php/bin/php-cgi 0.0 113612 438284 Oct09 nobody 99 

awk 過濾 25282 進程號,得到第5列「rsz」的內存大小為「113612」

輸出php-cgi進程占用的物理內存,并從高到低進行排序 

  1. [root@web3_u ~]# ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' \  
  2. | grep php-cgi | sort -k5nr 

輸出結果 

  1. 23946 php-cgi /usr/local/php/bin/php-cgi 0.0 129540 440000 Oct06 nobody 99  
  2. 24418 php-cgi /usr/local/php/bin/php-cgi 0.0 129336 437684 Oct06 nobody 99  
  3. 18973 php-cgi /usr/local/php/bin/php-cgi 0.0 129268 440176 Oct06 nobody 99  
  4. 17219 php-cgi /usr/local/php/bin/php-cgi 0.0 126588 439840 Oct06 nobody 99  
  5. 6996 php-cgi /usr/local/php/bin/php-cgi 0.0 124876 438104 Oct09 nobody 99  
  6. 23850 php-cgi /usr/local/php/bin/php-cgi 0.0 122984 440036 Oct09 nobody 99  
  7. 28310 php-cgi /usr/local/php/bin/php-cgi 0.0 122920 436456 Oct09 nobody 99 

其中rsz為實際內存,上例實現按內存排序,由大到小

TOP 命令輸出的列 

  1. PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND  
  2. 25282 nobody 20 0 428m 110m 93m S 0.0 1.9 0:34.42 php-cgi 

輸出列信息

  1.  PID 25282
  2.  用戶 nobody
  3.  虛擬內存 428M
  4.  物理內存 110M 110*1024= 112640 「和前面計算出來的值基本一致」
  5.  共享內存 93M
  6.  進程使用的物理內存和總內存的百分比 1.9 % 
  1. PID:進程的ID  
  2. USER:進程所有者  
  3. PR:進程的優先級別,越小越優先被執行  
  4. NInice:值  
  5. VIRT:進程占用的虛擬內存  
  6. RES:進程占用的物理內存  
  7. SHR:進程使用的共享內存  
  8. S:進程的狀態。S表示休眠,R表示正在運行,Z表示僵死狀態,N表示該進程優先值為負數  
  9. %CPU:進程占用CPU的使用率  
  10. %MEM:進程使用的物理內存和總內存的百分比  
  11. TIME+:該進程啟動后占用的總的CPU時間,即占用CPU使用時間的累加值。  
  12. COMMAND:進程啟動命令名稱 

按P 

  1. PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND  
  2. 16036 root 20 0 8902m 8.6g 480 R 100.0 36.6 0:33.15 redis-server  
  3. 12934 root 20 0 8902m 8.6g 1072 S 5.5 36.6 285:37.81 redis-server  
  4. 969 root 20 0 0 0 0 D 4.2 0.0 277:14.85 flush-252:16  
  5. 1304 root 23 3 1689m 50m 3264 S 4.2 0.2 1445:03 xs-searchd  
  6. 1294 root 20 0 14928 928 584 S 3.5 0.0 635:05.31 xs-indexd  
  7. 1287 nobody 20 0 12884 772 576 S 2.8 0.0 833:11.42 dnsmasq  
  8. 1302 root 23 3 1113m 39m 3244 S 0.7 0.2 1437:57 xs-searchd 
  9. 4444 www 20 0 280m 43m 884 S 0.7 0.2 27:43.92 nginx  
  10. 1 root 20 0 19232 1160 868 S 0.0 0.0 0:06.75 init 

按 P .表示按cpu排序,默認也是按cpu排序

按M 

  1. PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND  
  2. 12934 root 20 0 8902m 8.6g 1072 S 6.0 36.6 285:39.77 redis-server  
  3. 16036 root 20 0 8902m 8.6g 480 R 100.0 36.6 1:11.42 redis-server  
  4. 1236 www 20 0 1053m 209m 6556 S 0.0 0.9 4:40.70 php-cgi  
  5. 1231 www 20 0 1034m 146m 6536 S 0.0 0.6 4:20.82 php-cgi  
  6. 1184 www 20 0 1043m 119m 6584 S 0.0 0.5 4:21.85 php-cgi 

按M 。 表示按占用內存排序。 第一列 redis服務器占用了8.6G的內存 。 這個內存和redis info 

  1. [root@img1_u ~]# redis-cli info memory  
  2. # Memory  
  3. used_memory_human:8.32G 

基本相同。 

  1. [root@img1_u ~]# top -u www  
  2. top - 22:09:01 up 67 days, 14:16, 1 user, load average: 0.61, 0.90, 0.98  
  3. Tasks: 283 total, 2 running, 281 sleeping, 0 stopped, 0 zombie  
  4. Cpu(s): 3.9%us, 1.0%sy, 0.5%ni, 89.7%id, 4.6%wa, 0.0%hi, 0.3%si, 0.0%st  
  5. Mem: 24542176k total, 21130060k used, 3412116k free, 1750652k buffers  
  6. Swap: 524280k total, 0k used, 524280k free, 4039732k cached  
  7. PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND  
  8. 681 www 20 0 855m 25m 5796 S 0.0 0.1 0:47.00 php-cgi  
  9. 1181 www 20 0 887m 57m 6484 S 0.0 0.2 4:41.66 php-cgi  
  10. 1183 www 20 0 864m 34m 6320 S 0.0 0.1 3:52.39 php-cgi  
  11. 1184 www 20 0 1043m 119m 6584 S 0.0 0.5 4:21.85 php-cgi  
  12. 1185 www 20 0 869m 39m 6376 S 0.0 0.2 3:57.84 php-cgi  
  13. 1186 www 20 0 886m 56m 6244 S 0.0 0.2 3:44.75 php-cgi  
  14. 1187 www 20 0 926m 66m 6480 S 0.0 0.3 4:16.12 php-cgi  
  15. 1188 www 20 0 890m 60m 6288 S 0.0 0.3 4:13.35 php-cgi  
  16. 1189 www 20 0 892m 62m 6408 S 0.0 0.3 4:06.60 php-cgi 

-u 指定用戶。 php-cgi占用的內存在60M左右

按進程消耗內存多少排序的方法

通過 ps 命令

第一種方法 

  1. ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' | sort -k5nr 

第二種方法 

  1. ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' --sort -rsz 

輸出結果 

  1. [root@web3_u ~]# ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user' | sort -k5nr  
  2. 23946 php-cgi /usr/local/php/bin/php-cgi 0.0 129540 440000 Oct06 nobody  
  3. 24418 php-cgi /usr/local/php/bin/php-cgi 0.0 129336 437684 Oct06 nobody  
  4. 18973 php-cgi /usr/local/php/bin/php-cgi 0.0 129268 440176 Oct06 nobody  
  5. 17219 php-cgi /usr/local/php/bin/php-cgi 0.0 126588 439840 Oct06 nobody  
  6. 6996 php-cgi /usr/local/php/bin/php-cgi 0.0 125056 438104 Oct09 nobody  
  7. 23850 php-cgi /usr/local/php/bin/php-cgi 0.0 122984 440036 Oct09 nobody 

參數解析:

  •  -e 顯示所有進程
  •  -o 定制顯示信息
  •  pid 進程ID
  •  comm 進程名
  •  args 啟動命令
  •  pcpu 占用CPU 百分比
  •  rsz 占用物理內存大小
  •  vsz 占用虛擬內存大小
  •  stime 進程啟動時間
  •  user 啟動用戶

以第一行為例 

  1. 進程ID 23946  
  2. 進程名 php-cgi  
  3. 啟動命令 /usr/local/php/bin/php-cgi  
  4. 占用CPU 0  
  5. 占用物理內存 129540  
  6. 占用虛擬內存 440000  
  7. 啟動時間 Oct06  
  8. 啟動用戶 nobody 

通過 top 命令

top命令默認是以CPU排序輸出的,按字母「M」,可以按內存占用大小進行排序顯示 

  1. PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND  
  2. 23946 nobody 20 0 429m 126m 107m S 0.0 2.2 1:15.01 php-cgi  
  3. 24418 nobody 20 0 427m 126m 109m S 0.0 2.2 1:19.56 php-cgi  
  4. 18973 nobody 20 0 429m 126m 107m S 0.0 2.2 1:20.18 php-cgi  
  5. 17219 nobody 20 0 429m 123m 104m S 0.0 2.1 1:23.60 php-cgi  
  6. 6996 nobody 20 0 427m 122m 105m S 0.0 2.1 1:05.27 php-cgi  
  7. 23850 nobody 20 0 429m 120m 101m S 0.0 2.1 1:02.43 php-cgi 

輸出參數介紹

  1.  PID:進程的ID
  2.  USER:進程所有者
  3.  VIRT:進程占用的虛擬內存
  4.  RES:進程占用的物理內存
  5.  SHR:進程使用的共享內存
  6.  S:進程的狀態。S表示休眠,R表示正在運行,Z表示僵死狀態,N表示該進程優先值為負數
  7.  %CPU:進程占用CPU的使用率
  8.  %MEM:進程使用的物理內存和總內存的百分比
  9.  TIME+:該進程啟動后占用的總的CPU時間,即占用CPU使用時間的累加值。

通過比較進程ID 「23946」,top 命令和 ps 命令輸出的結果基本保持一致。 

 

責任編輯:龐桂玉 來源: Linux公社
相關推薦

2022-09-26 09:44:10

Linux

2018-10-30 12:44:04

Linux系統內存

2013-04-09 14:49:18

Linux內存統計內存泄露

2025-03-26 00:00:05

2018-04-11 08:25:11

Linux內存方法

2019-11-06 15:58:54

Linux內存消耗進程

2019-12-16 10:43:38

Linux內存消耗進程

2021-03-04 20:11:09

Linux內存編程

2020-08-27 14:40:55

Linux內存內核

2010-06-02 13:00:43

Linux 內存監控

2017-09-04 15:15:48

Linux內核內存屏障

2010-03-09 14:18:14

Linux安裝Orac

2010-03-09 16:53:58

2010-03-09 17:04:37

2011-03-09 13:02:15

LinuxLAMP安裝

2020-02-12 09:34:37

軟件微軟硬件

2023-07-06 00:45:05

Linux保護模式

2021-11-29 20:44:31

Linux內存進程

2020-11-27 06:04:00

Chrome

2018-11-01 10:59:52

Linux內存進程
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线观看国产wwwa级羞羞视频 | 精品一区二区三区四区五区 | 久久精品久久久 | 91免费看片神器 | 99精品免费久久久久久久久日本 | 蜜桃视频一区二区三区 | 久久综合亚洲 | 国产精品久久久久9999鸭 | 91在线观看免费视频 | 久久久国产精品 | 红色av社区 | 欧美激情一区二区 | 99精品国自产在线 | 欧美日韩在线视频一区 | 国产精品视频一二三区 | 久久久www成人免费精品张筱雨 | 精品国产一区二区三区成人影院 | 岛国毛片在线观看 | 亚洲一区二区在线免费观看 | 国产精品自产拍 | 中文字幕av一区二区三区 | 国产精品久久久久久久久久久久久 | 精品福利一区二区三区 | 中文字幕加勒比 | 亚洲高清在线观看 | 亚洲欧美自拍偷拍视频 | 99re在线播放 | 欧美日韩精品一区二区三区四区 | 成人美女免费网站视频 | 亚洲视频一区二区三区 | 亚洲国产精品一区 | 中文字幕一区二区三区在线观看 | 亚洲综合一区二区三区 | 国产精品视频在线免费观看 | 国产综合精品一区二区三区 | 99久久精品一区二区毛片吞精 | 午夜欧美 | 国产区第一页 | 亚洲成av人片在线观看 | 涩涩视频网站在线观看 | 亚洲免费高清 |