11/13/96 IPC (Inter-Process Communication) Limits SPECIAL NOTICES Information in this document is correct to the best of our knowledge at the time of this writing. Please send feedback by fax to "AIXServ Information" at (512) 823-4009. Please use this information with care. IBM will not be responsible for damages of any kind resulting from its use. The use of this information is the sole responsibility of the customer and depends on the customer's ability to eval- uate and integrate this information into the customer's operational environment. ABOUT THIS DOCUMENT This document describes how to set limits for IPC mechanisms and is applicable to AIX versions 3.2, 4.1 and 4.2. SHARED MEMORY SEGMENTS On most UNIX systems you edit /etc/master and set your own limits for IPC mechanisms (i.e. semaphore, shared memory segments, message queues). The only problem with this method is that the higher you set the limits, the bigger the kernel gets and performance can be affected. AIX uses a different method. In AIX, upper limits are set for IPC mechanisms and the individual IPC types are dynamically allocated/deallocated up to these upper limits. Therefore, the kernel grows and shrinks in size as IPC types are allocated and so any performance hit is only for the life of the IPC type. This difference in methods sometimes confuses users who are installing or using databases. In AIX IPC limits are taken care of for you. The only limit that may cause a problem is the max number of shared memory segments per process (10). The structures containing IPC limits are defined in three include files: (/usr/include/sys/) "sem.h", "msg.h", and "shm.h". The structures themselves are called "seminfo", "msginfo", and "shminfo", respectively. Only the structures are defined -- not the contents. The following is a list of values for AIX 3.2, 4.1. and 4.2. None of these values can be modified. IPC (Inter-Process Communication) Limits 1 11/13/96 AIX 3.2 AIX 4.1 AIX 4.2 Semaphores: ------- ------- ------- Maximum number of semaphore IDs 4096 4096 4096 Maximum semaphores per semaphore ID 65535 65535 65535 Maximum operations per semop call 1024 1024 1024 Maximum undo entries per process 1024 1024 1024 Size in bytes of undo structure 8208 8208 8208 Semaphore maximum value 32767 32767 32767 Adjust on exit maximum value 16384 16384 16384 Message Queues: Maximum message size 65535 65535 65535 Maximum bytes on queue 65535 65535 65535 Maximum number of message queue IDs 4096 4096 4096 Maximum messages per queue ID 8192 8192 8192 Shared Memory: Maximum segment size 256MB 256MB 256MB Minimum segment size 1 1 1 Maximum number of shared memory IDs. 4096 4096 4096 Maximum number of segments per process 10 10 10 IPC (Inter-Process Communication) Limits 2 11/13/96 READER'S COMMENTS Please fax this form to (512) 823-4009, attention "AIXServ Informa- tion". You may also e-mail comments to: elizabet@austin.ibm.com. These comments should include the same customer information requested below. Use this form to tell us what you think about this document. If you have found errors in it, or if you want to express your opinion about it (such as organization, subject matter, appearance) or make sug- gestions for improvement, this is the form to use. If you need technical assistance, contact your local branch office, point of sale, or 1-800-CALL-AIX (for information about support offer- ings). These services may be billable. Faxes on a variety of sub- jects may be ordered free of charge from 1-800-IBM-4FAX. Outside the U.S. call 415-855-4329 using a fax machine phone. When you send comments to IBM, you grant IBM a nonexclusive right to use or distribute your comments in any way it believes appropriate without incurring any obligation to you. NOTE: If you have a problem report or item number, supplying that number may help us determine why a procedure did or did not work in your specific situation. Problem Report or Item #: Branch Office or Customer #: Be sure to print your name and fax number below if you would like a reply: Name: Fax Number: ______________________________________________________________________ ______________________________________________________________________ ______________________________________________________________________ ______________________________________________________________________ ______________________________________________________________________ ______________________________________________________________________ ______________________________________________________________________ ______________________________________________________________________ ______________________________________________________________________ ______________________________________________________________________ ______________________________________________________________________ ______________________________________________________________________ END OF DOCUMENT (ipc.limits.31-41.cmd) IPC (Inter-Process Communication) Limits 3