/* msgrcv options */ #define MSG_NOERROR 010000/* no error if message is too big */ #define MSG_EXCEPT 020000/* recv any msg except of specified type.*/ #define MSG_COPY 040000/* copy (not remove) all queue messages */
/* Obsolete, used only for backwards compatibility and libc5 compiles */ struct msqid_ds { struct ipc_perm msg_perm; struct msg *msg_first; /* first message on queue,unused */ struct msg *msg_last; /* last message in queue,unused */
__kernel_old_time_t msg_stime; /* last msgsnd time */
__kernel_old_time_t msg_rtime; /* last msgrcv time */
__kernel_old_time_t msg_ctime; /* last change time */ unsignedlong msg_lcbytes; /* Reuse junk fields for 32 bit */ unsignedlong msg_lqbytes; /* ditto */ unsignedshort msg_cbytes; /* current number of bytes on queue */ unsignedshort msg_qnum; /* number of messages in queue */ unsignedshort msg_qbytes; /* max number of bytes on queue */
__kernel_ipc_pid_t msg_lspid; /* pid of last msgsnd */
__kernel_ipc_pid_t msg_lrpid; /* last receive pid */
};
/* Include the definition of msqid64_ds */ #include <asm/msgbuf.h>
/* message buffer for msgsnd and msgrcv calls */ struct msgbuf {
__kernel_long_t mtype; /* type of message */ char mtext[1]; /* message text */
};
/* buffer for msgctl calls IPC_INFO, MSG_INFO */ struct msginfo { int msgpool; int msgmap; int msgmax; int msgmnb; int msgmni; int msgssz; int msgtql; unsignedshort msgseg;
};
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.