*** UNIX MANUAL PAGE BROWSER ***

A Nergahak database for man pages research.

Navigation

Directory Browser

1Browse 4.4BSD4.4BSD
1Browse Digital UNIXDigital UNIX 4.0e
1Browse FreeBSDFreeBSD 14.3
1Browse MINIXMINIX 3.4.0rc6-d5e4fc0
1Browse NetBSDNetBSD 10.1
1Browse OpenBSDOpenBSD 7.7
1Browse UNIX v7Version 7 UNIX
1Browse UNIX v10Version 10 UNIX

Manual Page Search

Manual Page Result

0 Command: msqid_ds | Section: 4 | Source: Digital UNIX | File: msqid_ds.4.gz
msqid_ds(4) Kernel Interfaces Manual msqid_ds(4) NAME msqid_ds - Defines a message queue SYNOPSIS #include <sys/msg.h> struct msqid_ds{ struct ipc_perm msg_perm; struct msg *msg_first; struct msg *msg_last; u_short msg_cbytes; u_short msg_qnum; u_short msg_qbytes; u_short msg_lspid; ushort msg_lrpid; time_t msg_stime; time_t msg_rtime; time_t msg_ctime; }; DESCRIPTION The msqid_ds structure defines a message queue associated with a mes- sage queue ID. There is one queue per message queue ID. Collectively, the queues are stored as an array, with message queue IDs serving as an index into the array. A message queue is implemented as a linked list of messages, with msg_first amd msg_last pointing to the first and last messages on the queue. The IPC permissions for the message queue are implemented in a sepa- rate, but associated, ipc_perm structure. A message queue is created indirectly via the msgget() call. If msgget() is called with a non-existent message queue ID, the kernel al- locates a new msqid_ds structure, initializes it, and returns the mes- sage queue ID that is to be associated with the message queue. FIELDS The ipc_perm structure that defines permissions for message operations. See NOTES. A pointer to the first message on the queue. A pointer to the last message on the queue. The current number of bytes on the queue. The number of messages currently on the queue. The maximum number of bytes allowed on the queue. The process ID of the last process that called msgsnd() for the queue. The process ID of the last process that called msgrcv() for the queue. The time of the last ms- gsnd() operation. The time of the last msgrcv() operation. The time of the last msgctl() operation that changed a member of the msqid_ds structure. NOTES The msg_perm field identifies the associated ipc_perm structure that defines the permissions for operations on the message queue. The ipc_perm structure (from the sys/ipc.h header file) is shown here. struct ipc_perm { ushort uid; /* owner's user id */ ushort gid; /* owner's group id */ ushort cuid; /* creator's user id */ ushort cgid; /* creator's group id */ ushort mode; /* access modes */ ushort seq; /* slot usage sequence number */ key_t key; /* key */ }; The mode field is a 9-bit field that contains the permissions for message opera- tions. The first three bits identify owner permissions; the second three bits identify group permissions; and the last three bits identify other permissions. In each group, the first bit indicates read permis- sion; the second bit indicates write permission; and the third bit is not used. RELATED INFORMATION Functions: msgctl(2), msgget(2), msgrcv(2), msgsnd(2) delim off msqid_ds(4)

Navigation Options