[prev in list] [next in list] [prev in thread] [next in thread] 

List:       aix-l
Subject:    mmap and aix memory/process monitoring
From:       Jędrzej_Nasiadek <jedrzej.nasiadek () GMAIL ! COM>
Date:       2006-06-20 13:49:42
Message-ID: 4c1e143b0606200649r4ef6b6d7n1201a8583b9d7547 () mail ! gmail ! com
[Download RAW message or body]

Hi!

I thought I maybe you have any idea on this:

I've got an app that does following mmap() call
mmap(NULL, 1074790400, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_ANONYMOUS|MAP_VARIABLE|MAP_SHARED, -1, 0)

The problem is that neither ps command nor svmon shows the size of
allocated memory.
I wrote an example app that mmaps() some memory and ran svmon -P on
pid of that process before and after the mmap() call.
Before mmap() svmon shows:

------------------------------------------------------------------------
     Pid Command          Inuse      Pin     Pgsp  Virtual 64-bit
Mthrd  16MB
 1904654 mmaptest         15212     7202        0    15149      N
  N     N

    Vsid      Esid Type Description              PSize  Inuse   Pin
Pgsp Virtual
       0         0 work kernel                       s  11077  7199
   0 11077
   eb09d         d work shared library text          s   4046     0
   0  4046
   cecfb         1 clnt code,/dev/hd3:4106           s     63     0
   -     -
   6768e         2 work process private              s     16     3
   0    16
   ff8bd         f work shared library data          s     10     0
   0    10

And after mmaping 1074790400 bytes svmon shows:

------------------------------------------------------------------------
     Pid Command          Inuse      Pin     Pgsp  Virtual 64-bit
Mthrd  16MB
 1904654 mmaptest         15213     7202        0    15150      N
  N     N

    Vsid      Esid Type Description              PSize  Inuse   Pin
Pgsp Virtual
       0         0 work kernel                       s  11077  7199
   0 11077
   eb09d         d work shared library text          s   4046     0
   0  4046
   cecfb         1 clnt code,/dev/hd3:4106           s     63     0
   -     -
   6768e         2 work process private              s     16     3
   0    16
   ff8bd         f work shared library data          s     11     0
   0    11
   37824         6 mmap maps 1 source(s)             s      0     0
   -     -
   ced5b         - work mmap source                  s      0     0
   0     0
   d59d8         7 mmap maps 1 source(s)             s      0     0
   -     -
   57a48         5 mmap maps 1 source(s)             s      0     0
   -     -
     5e3         - work mmap source                  s      0     0
   0     0
   4854a         - work mmap source                  s      0     0
   0     0
   405cb         - work mmap source                  s      0     0
   0     0
   2ee27         - work mmap source                  s      0     0
   0     0
   3ea05         3 mmap maps 1 source(s)             s      0     0
   -     -
   16740         4 mmap maps 1 source(s)             s      0     0
   -     -

So it clearly shows that some memory was mmaped, but nobody knows how much.
How to check how much memory the app allocated this way? Or maybe any
idea on why that info is not shown in ps and svmon output?

regards,
    Jedrzej
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic