Name              (Semaphores)

DESCRIPTION
"Name" shows the name of a system semaphore used by a Sun MTP region. The
Server processes of a Sun MTP system employ these semaphores to gate access to 
shared resources.


VALUES
A list of the semaphore names and their meanings follows:

KXSEMAL       - Allocation semaphore. Controls access during allocation of 
                blocks of VSAM records.

KXSEMBCA      - Browse semaphore. Controls access to browse control areas in 
                shared memory.

KXSEMBUF(0-f) - VSAM buffer pool semaphores. The quantity of these semaphores 
                depends on the number of buffers specified for VSAM datasets in
                the VCT. The percentage of data buffers versus index buffers 
                depends on the unikixmain -I option used. The default percentage
                is a 50/50 split. Each semaphore controls access to a subset of
                the VSAM buffers. 

                KXSEMBUF0 through KXSEMBUF7 are always used for the data 
                buffers. KXSEMBUF8 through KXSEMBUFf are always used for index
                buffers. KXSEMBUF0 and KXSEMBUF8 are always valid. 

KXSEMENQ      - Enqueue semaphore. Controls access to CICS ENQ and DEQ memory 
                structures.

KXSEMEVC      - Event semaphore. Controls access to internal Sun MTP counters, 
                e.g. the transaction number counter that assigns a number to a 
                transaction.

KXSEMFCB      - File control semaphore. Controls access to file control blocks.

KXSEMFLR      - Not used. 

KXSEMPPT      - Processing program table semaphore. Controls access to the PPT
                in shared memory.

KXSEMRB       - Recovery full semaphore. Controls access to recovery resources 
                during a recovery file full condition.

KXSEMRCV      - Recovery semaphore. Controls access to recovery resources during
                before journal processing and dynamic transaction backout.

KXSEMSHR      - Shared memory semaphore. Controls access to shared memory during
                allocation and deallocation of blocks of memory.

KXSEMSTA      - Statistics semaphore. Controls access during generation of
                accounting records.

KXSEMSTQ      - Startq semaphore. Controls access to the STARTQ. The STARTQ 
                contains the data retrieved with the CICS RETRIEVE command.

KXSEMTRC      - Trace semaphore. Controls access to the internal Sun MTP trace
                table. 

KXSEMTS       - Temporary storage semaphore. Controls access to the temporary 
                storage queue manipulated by the CICS WRITEQ TS, READQ TS, and 
                DELETEQ TS commands. Both main and auxiliary temporary storage
                use this semaphore.

KXSEMUQ       - Update semaphore. Controls access to the update queue during a
                CICS WRITE, REWRITE, DELETE, or SYNCPOINT. The update queue
                in Sun MTP contains one entry for each record updated but not yet
                syncpointed.


INTERPRETATION
A semaphore is a UNIX gating mechanism that allows multiple processes to share
a resource in a mutually exclusive manner. A Sun MTP system's Server processes 
may use all of the semaphores described above. The "Semaphores" field on the 
Overview Screen's KxScrolledList shows the semaphores locked by a particular 
Transaction Server process.


CONCLUSIONS
For the most part, Sun MTP Server processes use the set of semaphores shown 
above. The only user-configurable semaphores are the buffer and index 
semaphores, whose quantity is determined by the number of buffers specified in 
the VCT. Observe the usage of the KXSEMBUF0-f semaphores (shown by the other 
fields on the Semaphores Screen) to adjust the number of buffers for optimum 
performance. When the numbers of "Waits" on the buffer semaphores keep 
climbing, increase the number of buffers to spread out the semaphore access to 
the data and indexes in the buffers.
