query reg semaphore / processes on solaris

Our Baan application has a server process bflusher which is activated automaticaly by another server process bmanager . These processes uses shared memory to carry out it's operations .

Through a baan application query command (tbase6.1 P d 3 ) , i can find the number of users (user process bshell6.1- see column 4 below ). connected to some shared memory pages.
Triton Base File Information:

file id devno inode usr flg bdf flusher name
-------- ------- ------- --- --- --- ------- -----------------------------------
fbf10be8 8388670 28165 53 0 0 11360 /tools/000/tttaad/taad100000
fbf42358 8388670 28167 6 0 0 11360 /tools/000/tttaad/taad106000
fbf12b50 8388670 28171 32 0 0 11360 /tools/000/tttaad/taad110000
fbf16a20 8388670 28173 1 0 0 11360 /tools/000/tttaad/taad120000
fbf3f118 8388670 28175 29 0 0 11360 /tools/000/tttaad/taad121000
fbf107b8 8388670 28179 56 0 0 11360 /tools/000/tttaad/taad200000

Value 11360 in 7th column is the unix pid of bflusher process.

There is nothing in Baan to tell which users are connected to the shared memory pages (i.e.users connected pid 11360). When all user processes (bshell6.1) using those share memory pages ends , that shared memory pages disappear and become free.

Is there any way I can find a link between the server process bflusher to user processe bshell6.1 based on unix proc tools or any other utilities.

I don't know this baan thing but it looks like you are using memory mapped files. The program lsof can report on those. It is a freeware program that is very useful.

For system 5 style shared memory, /usr/proc/bin/pmap will display any shared memory segments in use for a particular pid.