June 23 2014
How to get the Informix instance IPC shared memory segment base address in Hexadecimal?
Tagged Under : Informix, IPC, IPC shared memory segment, shared memory
(1) Get SERVERNUM value from onconfig:
$ onstat -c | grep SERVERNUM
SERVERNUM       2
(2) Convert SERVERNUM value from Decimal (base10) to Hexadecimal (base16):
Decimal 2 = Hex 2
          = 0x2
Note: you may use ms-windows “calc” programmer view.
(3) Apply this fomular with Hexadecimal calculation:
IPC Shared Mem Address = (SERVERNUM_In_Hex * 0x10000) + 0x52564801
                       = (0x2 * 0x10000) + 0x52564801
                       = 0x20000 + 0x52564801
                       = 0x52584801
(4) Therefore, you will get the IPC shared memory address started from 0x52584801..
$ ipcs -m | grep 5258480
key        shmid      owner     perms      bytes      nattch     status
0x52584801 92864520   root      660        2606284800 68         locked
0x52584802 92897299   root      660        2097152000 68         locked
0x52584803 92930070   root      666        561152     68