Tunable Kernel Parameters
Table Of Contents
- Tunable Kernel Parameters
- Legal Notices
- Revision History
- Conventions
- 1 Overview
- 2 Accounting Subsystem
- 3 Asynchronous I/O Subsystem
- 4 File System Subsystem
- 5 Interprocess Communication (IPC) Subsystem
- 6 Kernel Crash Dump Subsystem
- 7 Memory Paging Subsystem
- 8 Process Management Subsystem
- 9 Spinlock Pool
- 10 Streams Subsystem
- 11 Miscellaneous Parameters
- Miscellaneous Parameter Summary
- CD-ROM Parameter Summary
- System Clock Parameter Summary
- Disk I/O Parameter Summary
- Intrusion Detection System/9000
- Fast Symbolic Link Traversal Parameter Summary
- Reserved System Memory Parameter Summary
- Network Parameter Summary
- Queued Signals Parameter Summary
- Real-Time Priority Parameter Summary
- Terminal Parameter Summary
- Maximum Users Parameter Summary
- Web Server Parameter Summary
- Miscellaneous Parameter Summary
- A Table of Tunable Kernel Parameters

Interprocess Communication (IPC) Subsystem
Overview of Message Queue Operations
Chapter 5
36
Message Queues
Queue Size Each message queue is created with enough space for msgmnb (message
queue number of bytes) bytes of messages. Each message contains one
or more message segments of msgssz (message segment size) bytes
each.
Message Size To discourage malicious or poorly written programs from consuming
excessive message space, individual messages cannot contain more
than msgmax (message maximum) bytes per message. Each message is
stored in the queue as a series of one or more segments containing
msgssz bytes per segment. The number of segments used for a
message is the smallest integer that, when multiplied by msgssz, is
greater than the total number of bytes in the message.
Queue Space The total space consumed by all messages in any given queue cannot
exceed msgmnb bytes (message-queue maximum number of bytes. This
value must not be less than msgmax bytes.
Total Messages The maximum number of messages that can exist in a queue at any
given time depends on the length of individual messages and the
constraints of queue size and other factors listed above. However, a
system-wide limit is imposed. The total number of messages that can
reside on the system at any one time in all queues cannot exceed
msgtql (see Message Header Array in “System Globals” below).
System Globals
In addition to the constraints on individual message queues and messages listed in
“Message Queues” above, the kernel imposes additional constraints on IPC message
management
Message Queue Identifiers
Each message queue has an associatedmessage queue identifier stored
in the nonswappable kernel area. msgmni (message maximum number
of identifiers) limits the total number of message queues allowed on
the system at any given time.
Message Header Array
Each message has an associated message header which is stored in an
array in the swappable shared memory area. msgtql (message total
quantity limit) defines the total number of messages that can be
present system-wide at any given time.
Free Space Management
As messages are sent and received, space to contain those messages is
allocated then released, making the space available for other
messages. The kernel maintains a resource map which is used for
identifying free space to allocate for new messages. The size of this
map is controlled by the msgmap parameter.