AIX下進程內存分析 AIX下能夠使用ps v工具或者svmon工具來分析進程內存。ps v命令是ps命令的一個工 具,要注意的是v以前不要加」-「。ps v工具在任何AIX操做系統下均可以使用。比 如: # ps -lfp 13288 F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME TTY TIME CMD 240001 A oracle 13288 1 0 60 20 1ba2f 34032 Nov 03 - 0:06 ora_pmon_DEV # ps v 13288 PID TTY STAT TIME PGIN SIZE RSS LIM TSIZ TRS %CPU %MEM COMMAND 13288 - A 0:08 225 5616 13904 32768 28420 13512 0.0 1.0 ora_pmon_DEV 從ps命令看到sz是34M。而用ps v命令能夠看到rss是13904,TRS是13512。進程使用的 內存是RSS-TRS=392K(ps v看到的內存單位是K)。 用svmon能夠看到更多的信息,其結果和ps v是一致的。好比: #svmon -P 23288 ---------------------------------------------------------------------------- --- Pid Command Inuse Pin Pgsp Virtual 64-bit Mthrd 23288 ora_pmon_V8 29598 1451 182 16560 N N Vsid Esid Type Description Inuse Pin Pgsp Virtual Addr Range 1781 3 work shmat/mmap 11824 0 0 11824 0..24700 1761 1 pers code,large file /dev 9681 0 - - 0..9680 0 0 work kernel seg 3982 1450 182 3390 0..21804 : 65474..65535 18018 d work shared library text 2852 0 0 158 0..65535 4764 2 work process private 1127 1 0 1127 0..1182 : 65307..65535 f74f f work shared library data 81 0 0 61 0..1291 1e59e - pers large file /dev/lv00 33 0 - - 0..32 e58e - pers large file /dev/lv00 16 0 - - 0..82 b74b - pers large file /dev/lv00 1 0 - - 0..0 3703 - pers large file /dev/lv00 1 0 - - 0..0 #ps v 23288 PID TTY STAT TIME PGIN SIZE RSS LIM TSIZ TRS %CPU %MEM COMMAND 23288 - A 0:00 0 4752 43556 32768 27289 38724 0.0 5.0 ora_pmon_V8 要注意的是,svmon顯示的內存都是以Page爲單位的,AIX下,每一個頁爲4K。 經過work process private的virtual大小和work shared library data的virtual大小 的和ps v的SIZE是徹底一致的: 4752K=(1127+61)×4K 而RSS的內容至關於linux項目的private working-storage segments加上pers code和 shared library data。 43556K=(1127 + 9681 + 81)*4K TRS就是INUSE項目的pers code: 38724K=9681*4K