Consultor Eletrônico



Kbase 18759: Undocumented maximums for kernel tunable parameters
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   4/19/1999
Undocumented maximums for kernel tunable parameters

Undocumented maximums for Inter-Process Communication kernel
tunable parameters.

The following report was taken from the SCO technical Library and
concerns the following Operating Systems:-
SCO UNIX System V/386 Release 3.2 Operating System Version 4.2
SCO Open Desktop Lite Release 3.0
SCO Open Desktop Release 3.0
SCO Open Server Network System Release 3.0
SCO Open Server Enterprise System Release 3.0

The following Shared Memory and Semaphore kernel tunable parameters do
not appear to be documented:
SEMMAP
SEMMNI
SEMMNU
SEMMSL
SEMOPM
SEMUME
SEMMNS
SHMMAX
SHMMNI

What are their maximum values?

Solution

Maximum values for the above as follows:

SEMMAP - No maximum as such, other than the signed integer
limit (2GB). However, the size of the data structure
it controls is limited by the maximum size of the
kernel (8MB), and will therefore be affected by how
the kernel is configured in terms of other tunable
parameters and drivers.
When the 8MB limit has been exceeded the kernel link
will fail with the following error:
can't allocate section .bss

SEMMNI - Same as SEMMAP
SEMMNU - Same as SEMMAP
SEMMSL - Same as SEMMAP
SEMOPM - Same as SEMMAP
SEMUME - Same as SEMMAP
SEMMNS - Same as SEMMAP

SHMMAX - Again, no maximum, other than signed integer limit.
This is used by the shared memory subsystem only
as a check, and does not control the size of a
data structure.

The real limitations for a process using shared
memory are:

1. Total available virtual memory (user space + swap space)
2. Shared memory's position in the system's virtual address space

In order to avoid 2 (when using shared memory whose address is
assigned by the kernel), set SHMMAX to 256MB

SHMMNI - Same as SEMMAP

Tom Cattigan (19/04/99)