Max number of shared memory segment attached in parallel
ITEM: RTA000079058
Our Solution Centre is porting an application from an HP/UX
to Aix.
Some processes need to attach a relevant number of shared
memory segment.
When we try to ATTACH the 11th segment, no matter how many
shget() function has been called, we get an error
saying the maximum number of segments has been exceeded.
The third part that has written the code pretends to have
encountered the same problem with the HP platform too, and
that has been fixed by modifying a kernel parameter in a
master file.
We did not find any way to customize this parameter
under AIX because it depends on some kind of addressing
limitation.
Do you have any idea on how to bypass the problem
without introducing too changes in the code (mmap) ?
Do you think mmap decreases performances
(customer is sensitive to performance items) ?
ANSWER
You are correct, the limit is 10 shared memory segments.
This parameter is not tuneable in AIX. The suggested
work around is to use the mmap(). I did not find a comparison
between the shared memory segments and mmap routines.
Although it has been reported that the mmap implementation
may cause more more page faults in the contention for the
resources.
S e a r c h - k e y w o r d s:
MMAP AND SHARED MEMORY.
WWQA: ITEM: RTA000079058 ITEM: RTA000079058
Dated: 02/1995 Category: ITSAI6000GE
This HTML file was generated 99/06/24~12:43:27
Comments or suggestions?
Contact us