NAME
shmmax — maximum size (in bytes) for a System V shared memory segment
VALUES
Allowed values
Minimum: 2048
Maximum: 0X40000000
for a 32 bit kernel,
and
0x40000000000
for a 64 bit kernel
DESCRIPTION
Shared memory is an efficient InterProcess Communications (IPC) mechanism.
One process creates a shared memory segment and attaches it to its
address space.
Any processes looking to communicate with this process through the shared
memory segment, then attach the shared memory segment to their
corresponding address spaces as well.
Once attached, a process can read from or write to the segment
depending on the permissions specified while attaching it.
This tunable sets the maximum size for such a segment within the
system, and is dynamic as of HP-UX 11i.
Who is Expected to Change This Tunable?
Anyone.
Restrictions on Changing
Changes to this tunable take effect immediately.
When Should the Value of This Tunable Be Raised?
shmmax
should be raised if it is below the maximum and user programs are
attempting to
shmget
segments larger than the current value, and receiving an
EINVAL
error message.
What Are the Side Effects of Raising the Value?
The only effect is that user programs can use
shmget
to get larger segments.
When Should the Value of This Tunable Be Lowered?
If you wish to enforce behavior on the user's code, limiting the
maximum size of System V segments.
What Are the Side Effects of Lowering the Value?
None.
What Other Tunable Values Should Be Changed at the Same Time?
shmseg
and
shmmni
should be considered because enforcing smaller segments may cause
the user's code to try to create more segments to accomplish the task.
If this tunable is being set to the minimum to try to discourage
the use of System V shared memory,
shmem
should be used instead.
WARNINGS
All HP-UX kernel tunable parameters are release specific.
This parameter may be removed or have its meaning changed in
future releases of HP-UX.
AUTHOR
shmmax
was developed by HP.