Semaphores - setting systems parameters
SEMMSL - This parameter determines the maximum number of semaphores that can be assigned to a semaphore set.  
The parameter should be equal or greater to the value of the PROCESSES initialization parameter to limit
the number of semaphores sets for a specific instance.  If running multiple instances on one server this parameter should 
be set to the greatest PROCESSES parameter of all instances.  Each process in an instance corresponds to one semaphore 
in unix so when the instance is started the number semaphores are allocated based on the PROCESS parameter and the number
of semaphore sets based on PROCESSES divided by SEMMSL.  

Example
1. PROCESS parm in init.ora set to 200
   SEMMSL set to 100

   The result will be 2 semaphore sets of 100 semaphores.
   If you issue an oradebug ipc in svrmgrl you will get:  

      Shared memory information written to trace file.
      -------------------- Semaphores --------------------
      Total number of semaphores = 200
      Number of semaphores per set = 100
      Number of semaphore sets = 2
      Semaphore identifiers:
        524304  11101

   If you issue an ipcs in unix (this displays the id of the semaphore sets):
      IPC status from  as of Wed Jul 28 09:25:01 1999
      Message Queue facility not in system.
      T         ID      KEY        MODE        OWNER    GROUP
      Shared Memory:
      m          0   0x5000015b --rw-r--r--     root     root
      m       2802   0xdab585cc --rw-r-----   oracle      dba
      Semaphores:
      s     524304     00000000 --ra-r-----   oracle      dba
      s      11101     00000000 --ra-r-----   oracle      dba

   Changing the SEMMSL to 200 in the above example would reduce the number of semaphore sets to 1.



SEMMNI - Maximum number of semaphores set id's that can be allocated on the server at any given time.

Example
1. 6 instances defined as:
   PROCESSES=200
   SEMMSL=100
   SEMMNI=10

	In this case it would be impossible to bring up all instances at the same since 2 sets of semaphores (PROCESS/SEMMSL=2) 
   for each instance will be allocated.  To fix the problem in this case you would need to increase SEMMNI to a value 
   greater than 12.


SEMMNS - Maximum number of semaphores that can be allocated on the server at any given time.