Linux‎ > ‎

~Kernel Parameters

   # ipcs -l

   ------ Shared Memory Limits --------
   max number of segments = 4096                   ## SHMMNI	
   max seg size (kbytes) =  67108864               ## SHMMAX
   max total shared memory (kbytes) = 17179869184  ## SHMALL
   min seg size (bytes) = 1

   ------ Semaphore Limits --------
   max number of arrays = 1024                 ## SEMMNI
   max semaphores per array = 250              ## SEMMSL
   max semaphores system wide = 256000         ## SEMMNS
   max ops per semop call = 32                 ## SEMOPM
   semaphore max value = 32767

   ------ Messages: Limits --------
   max queues system wide = 16                 ## MSGMNI
   max size of message (bytes) = 65536         ## MSGMAX
   default max size of queue (bytes) = 65536   ## MSGMNB


SHMMAX is the maximum size of a shared memory segment on a Linux system whereas SHMALL is the maximum allocation of shared memory pages on a system.

SHMMAX, the minimum required on x86 systems would be 268435456 (256 MB) and for 64-bit systems, it would be 1073741824 (1 GB) {Depends on the Application }.

The kernel parameter sem consists of 4 tokens, SEMMSL, SEMMNS, SEMOPM and SEMMNI. SEMMNS is the result of SEMMSL multiplied by SEMMNI. 

Typically, SEMMNI should be twice the maximum number of connections allowed (MAXAGENTS) multiplied by the number of logical partitions on the database server computer plus the number of local application connections on the database server computer.

MSGMNI affects the number of agents that can be started, MSGMAX affects the size of the message that can be sent in a queue, and MSGMNB affects the size of the queue.

Run sysctl with -p parameter to load in sysctl settings from the  file/etc/sysctl.conf