diff options
Diffstat (limited to 'doc/itron3.0/mailbox.t')
-rw-r--r-- | doc/itron3.0/mailbox.t | 338 |
1 files changed, 0 insertions, 338 deletions
diff --git a/doc/itron3.0/mailbox.t b/doc/itron3.0/mailbox.t deleted file mode 100644 index 34746c743a..0000000000 --- a/doc/itron3.0/mailbox.t +++ /dev/null @@ -1,338 +0,0 @@ -@c -@c COPYRIGHT (c) 1988-2002. -@c On-Line Applications Research Corporation (OAR). -@c All rights reserved. -@c -@c This is the chapter from the RTEMS ITRON User's Guide that -@c documents the services provided by the mailbox -@c manager. -@c -@c $Id$ -@c - - -@chapter Mailbox Manager - -@section Introduction - -The -mailbox manager is basically a linked list, hidden by the super core message queue and consists of a control block, a private structure. The control block comprises of the create mailbox structure, the message structure and the reference mailbox structure. - -The services provided by the mailbox manager are: - -@itemize @bullet -@item @code{cre_mbx} - Create Mailbox -@item @code{del_mbx} - Delete Mailbox -@item @code{snd_msg} - Send Message to Mailbox -@item @code{rcv_msg} - Receive Message from Mailbox -@item @code{prcv_msg} - Poll and Receive Message from Mailbox -@item @code{trcv_msg} - Receive Message from Mailbox with Timeout -@item @code{ref_mbx} - Reference Mailbox Status -@end itemize - - -@section Background - -@section Operations - -@section System Calls - -This section details the mailbox manager's services. -A subsection is dedicated to each of this manager's services -and describes the calling sequence, related constants, usage, -and status codes. - - -@c -@c cre_mbx -@c - -@page - -@subsection cre_mbx - Create Mailbox - -@subheading CALLING SEQUENCE: - -@ifset is-C -@example -ER cre_mbx( - ID mbxid, - T_CMBX *pk_cmbx -); -@end example -@end ifset - -@ifset is-Ada -@end ifset - -@subheading STATUS CODES: - -@code{E_OK} - Normal completion@* -@code{E_NOMEM} - Insufficient memory@* -@code{E_ID} - Invalid ID number@* -@code{E_RSATR} - Reserved attribute@* -@code{E_OBJ} - Invalid object state@* -@code{E_OACV} - Object access violation@* -@code{E_PAR} - Parameter error - - -@subheading DESCRIPTION: - -Allocated a control area/buffer space for mailbox with some ID. - -@example - User area: +ve ids - System area: -ve ids -@end example - -User may specify if its FIFO or priority level queue. -Assumes shared memory b/w communicating processes. -Initializes core message queue for this mbox. - -@subheading NOTES: - -NONE - - -@c -@c del_mbx -@c - -@page - -@subsection del_mbx - Delete Mailbox - -@subheading CALLING SEQUENCE: - -@ifset is-C -@example -ER del_mbx( - ID mbxid -); -@end example -@end ifset - -@ifset is-Ada -@end ifset - -@subheading STATUS CODES: - -@code{E_OK} - Normal completion@* -@code{E_ID} - Invalid ID number@* -@code{E_NOEXS} - Object does not exist@* -@code{E_OACV} - Object access violation - -@subheading DESCRIPTION: - -Specified by the ID, cleans up all data structures and control blocks. - -@subheading NOTES: - -NONE - - -@c -@c snd_msg -@c - -@page - -@subsection snd_msg - Send Message to Mailbox - -@subheading CALLING SEQUENCE: - -@ifset is-C -@example -ER snd_msg( - ID mbxid, - T_MSG *pk_msg -); -@end example -@end ifset - -@ifset is-Ada -@end ifset - -@subheading STATUS CODES: - -@code{E_OK} - Normal completion@* -@code{E_ID} - Invalid ID number@* -@code{E_NOEXS} - Object does not exist@* -@code{E_OACV} - Object access violation@* -@code{E_QOVR} - Queueing or nesting overflow - -@subheading DESCRIPTION: - -Sends the address of message to mbox having a given id, any waiting tasks (blocked tasks) will be woken up. It supports non-blocking send. - -@subheading NOTES: - -NONE - - -@c -@c rcv_msg -@c - -@page - -@subsection rcv_msg - Receive Message from Mailbox - -@subheading CALLING SEQUENCE: - -@ifset is-C -@example -ER rcv_msg( - T_MSG **ppk_msg, - ID mbxid -); -@end example -@end ifset - -@ifset is-Ada -@end ifset - -@subheading STATUS CODES: - -@code{E_OK} - Normal completion@* -@code{E_ID} - Invalid ID number@* -@code{E_NOEXS} - Object does not exist@* -@code{E_OACV} - Object access violation@* -@code{E_PAR} - Parameter error@* -@code{E_DLT} - The object being waited for was deleted@* -@code{E_RLWAI} - WAIT state was forcibly released@* -@code{E_CTX} - Context error - -@subheading DESCRIPTION: - -If there is no message then receiver blocks, if not empty then it takes the first message of the queue. - -@subheading NOTES: - -NONE - - -@c -@c prcv_msg -@c - -@page - -@subsection prcv_msg - Poll and Receive Message from Mailbox - -@subheading CALLING SEQUENCE: - -@ifset is-C -@example -ER prcv_msg( - T_MSG **ppk_msg, - ID mbxid -); -@end example -@end ifset - -@ifset is-Ada -@end ifset - -@subheading STATUS CODES: - -@code{E_OK} - Normal completion@* -@code{E_ID} - Invalid ID number@* -@code{E_NOEXS} - Object does not exist@* -@code{E_OACV} - Object access violation@* -@code{E_PAR} - Parameter error@* -@code{E_DLT} - The object being waited for was deleted@* -@code{E_RLWAI} - WAIT state was forcibly released@* -@code{E_CTX} - Context error@* - -@subheading DESCRIPTION: - -Poll and receive message from mailbox. - -@subheading NOTES: - -NONE - - -@c -@c trcv_msg -@c - -@page - -@subsection trcv_msg - Receive Message from Mailbox with Timeout - -@subheading CALLING SEQUENCE: - -@ifset is-C -@example -ER trcv_msg( - T_MSG **ppk_msg, - ID mbxid, - TMO tmout -); -@end example -@end ifset - -@ifset is-Ada -@end ifset - -@subheading STATUS CODES: - -@code{E_OK} - Normal completion@* -@code{E_ID} - Invalid ID number@* -@code{E_NOEXS} - Object does not exist@* -@code{E_OACV} - Object access violation@* -@code{E_PAR} - Parameter error@* -@code{E_DLT} - The object being waited for was deleted@* -@code{E_RLWAI} - WAIT state was forcibly released@* -@code{E_CTX} - Context error - -@subheading DESCRIPTION: - -Blocking receive with a maximum timeout. - -@subheading NOTES: - -NONE - - -@c -@c ref_mbx -@c - -@page - -@subsection ref_mbx - Reference Mailbox Status - -@subheading CALLING SEQUENCE: - -@ifset is-C -@example -ER ref_mbx( - T_RMBX *pk_rmbx, - ID mbxid -); -@end example -@end ifset - -@ifset is-Ada -@end ifset - -@subheading STATUS CODES: - -@code{E_OK} - Normal completion@* -@code{E_ID} - Invalid ID number@* -@code{E_NOEXS} - Object does not exist@* -@code{E_OACV} - Object access violation@* -@code{E_PAR} - Parameter error - -@subheading DESCRIPTION: - -Supports non-blocking receive. If there are no messages, it returns -1. Also returns id of the next process waiting on a message. - -@subheading NOTES: - -NONE - - |