]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - doc/html/ref/posix-message-passing.html
Initial revision
[karo-tx-redboot.git] / doc / html / ref / posix-message-passing.html
1 <!-- Copyright (C) 2003 Red Hat, Inc.                                -->
2 <!-- This material may be distributed only subject to the terms      -->
3 <!-- and conditions set forth in the Open Publication License, v1.0  -->
4 <!-- or later (the latest version is presently available at          -->
5 <!-- http://www.opencontent.org/openpub/).                           -->
6 <!-- Distribution of the work or derivative of the work in any       -->
7 <!-- standard (paper) book form is prohibited unless prior           -->
8 <!-- permission is obtained from the copyright holder.               -->
9 <HTML
10 ><HEAD
11 ><TITLE
12 >Message Passing [POSIX Section 15]</TITLE
13 ><meta name="MSSmartTagsPreventParsing" content="TRUE">
14 <META
15 NAME="GENERATOR"
16 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
17 "><LINK
18 REL="HOME"
19 TITLE="eCos Reference Manual"
20 HREF="ecos-ref.html"><LINK
21 REL="UP"
22 TITLE="POSIX Standard Support"
23 HREF="posix-standard-support.html"><LINK
24 REL="PREVIOUS"
25 TITLE="Clocks and Timers [POSIX Section 14]"
26 HREF="posix-clocks-and-timers.html"><LINK
27 REL="NEXT"
28 TITLE="Thread Management [POSIX Section 16]"
29 HREF="posix-thread-management.html"></HEAD
30 ><BODY
31 CLASS="SECT1"
32 BGCOLOR="#FFFFFF"
33 TEXT="#000000"
34 LINK="#0000FF"
35 VLINK="#840084"
36 ALINK="#0000FF"
37 ><DIV
38 CLASS="NAVHEADER"
39 ><TABLE
40 SUMMARY="Header navigation table"
41 WIDTH="100%"
42 BORDER="0"
43 CELLPADDING="0"
44 CELLSPACING="0"
45 ><TR
46 ><TH
47 COLSPAN="3"
48 ALIGN="center"
49 >eCos Reference Manual</TH
50 ></TR
51 ><TR
52 ><TD
53 WIDTH="10%"
54 ALIGN="left"
55 VALIGN="bottom"
56 ><A
57 HREF="posix-clocks-and-timers.html"
58 ACCESSKEY="P"
59 >Prev</A
60 ></TD
61 ><TD
62 WIDTH="80%"
63 ALIGN="center"
64 VALIGN="bottom"
65 >Chapter 31. POSIX Standard Support</TD
66 ><TD
67 WIDTH="10%"
68 ALIGN="right"
69 VALIGN="bottom"
70 ><A
71 HREF="posix-thread-management.html"
72 ACCESSKEY="N"
73 >Next</A
74 ></TD
75 ></TR
76 ></TABLE
77 ><HR
78 ALIGN="LEFT"
79 WIDTH="100%"></DIV
80 ><DIV
81 CLASS="SECT1"
82 ><H1
83 CLASS="SECT1"
84 ><A
85 NAME="POSIX-MESSAGE-PASSING">Message Passing &#0091;POSIX Section 15&#0093;</H1
86 ><DIV
87 CLASS="SECT2"
88 ><H2
89 CLASS="SECT2"
90 ><A
91 NAME="AEN13246">Functions Implemented</H2
92 ><TABLE
93 BORDER="5"
94 BGCOLOR="#E0E0F0"
95 WIDTH="70%"
96 ><TR
97 ><TD
98 ><PRE
99 CLASS="SCREEN"
100 >mqd&#0095;t mq&#0095;open( const char &#0042;name, int  oflag, ... ); 
101 int mq&#0095;close( mqd&#0095;t  mqdes ); 
102 int mq&#0095;unlink( const char &#0042;name );
103 int mq&#0095;send( mqd&#0095;t mqdes, const char &#0042;msg&#0095;ptr,
104              size&#0095;t msg&#0095;len, unsigned int msg&#0095;prio ); 
105 ssize&#0095;t mq&#0095;receive( mqd&#0095;t mqdes, char &#0042;msg&#0095;ptr,
106                     size&#0095;t msg&#0095;len, unsigned int &#0042;msg&#0095;prio );
107 int mq&#0095;setattr( mqd&#0095;t mqdes, const struct mq&#0095;attr &#0042;mqstat,
108                 struct mq&#0095;attr &#0042;omqstat ); 
109 int mq&#0095;getattr( mqd&#0095;t mqdes, struct mq&#0095;attr &#0042;mqstat ); 
110 int mq&#0095;notify( mqd&#0095;t mqdes, const struct sigevent &#0042;notification );</PRE
111 ></TD
112 ></TR
113 ></TABLE
114 ><P
115 >From POSIX 1003.1d draft: </P
116 ><TABLE
117 BORDER="5"
118 BGCOLOR="#E0E0F0"
119 WIDTH="70%"
120 ><TR
121 ><TD
122 ><PRE
123 CLASS="SCREEN"
124 >int mq&#0095;send( mqd&#0095;t mqdes, const char &#0042;msg&#0095;ptr,
125              size&#0095;t msg&#0095;len, unsigned int msg&#0095;prio,
126              const struct timespec *abs_timeout ); 
127 ssize&#0095;t mq&#0095;receive( mqd&#0095;t mqdes, char &#0042;msg&#0095;ptr,
128                     size&#0095;t msg&#0095;len, unsigned int &#0042;msg&#0095;prio,
129              const struct timespec *abs_timeout );</PRE
130 ></TD
131 ></TR
132 ></TABLE
133 ></DIV
134 ><DIV
135 CLASS="SECT2"
136 ><H2
137 CLASS="SECT2"
138 ><A
139 NAME="AEN13251">Functions Omitted</H2
140 ><P
141 >&lt;none&gt;</P
142 ></DIV
143 ><DIV
144 CLASS="SECT2"
145 ><H2
146 CLASS="SECT2"
147 ><A
148 NAME="AEN13254">Notes</H2
149 ><P
150 ></P
151 ><UL
152 ><LI
153 ><P
154 >    The presence of message queues is controlled by the
155     CYGPKG&#0095;POSIX&#0095;MQUEUES option.  Setting this will
156     cause &#0091;&#0095;POSIX&#0095;MESSAGE&#0095;PASSING&#0093; to
157     be defined and the message queue API to be made available.
158     </P
159 ></LI
160 ><LI
161 ><P
162 >    Message queues are not currently filesystem objects. They live in
163     their own name and descriptor spaces.
164     </P
165 ></LI
166 ></UL
167 ></DIV
168 ></DIV
169 ><DIV
170 CLASS="NAVFOOTER"
171 ><HR
172 ALIGN="LEFT"
173 WIDTH="100%"><TABLE
174 SUMMARY="Footer navigation table"
175 WIDTH="100%"
176 BORDER="0"
177 CELLPADDING="0"
178 CELLSPACING="0"
179 ><TR
180 ><TD
181 WIDTH="33%"
182 ALIGN="left"
183 VALIGN="top"
184 ><A
185 HREF="posix-clocks-and-timers.html"
186 ACCESSKEY="P"
187 >Prev</A
188 ></TD
189 ><TD
190 WIDTH="34%"
191 ALIGN="center"
192 VALIGN="top"
193 ><A
194 HREF="ecos-ref.html"
195 ACCESSKEY="H"
196 >Home</A
197 ></TD
198 ><TD
199 WIDTH="33%"
200 ALIGN="right"
201 VALIGN="top"
202 ><A
203 HREF="posix-thread-management.html"
204 ACCESSKEY="N"
205 >Next</A
206 ></TD
207 ></TR
208 ><TR
209 ><TD
210 WIDTH="33%"
211 ALIGN="left"
212 VALIGN="top"
213 >Clocks and Timers &#0091;POSIX Section 14&#0093;</TD
214 ><TD
215 WIDTH="34%"
216 ALIGN="center"
217 VALIGN="top"
218 ><A
219 HREF="posix-standard-support.html"
220 ACCESSKEY="U"
221 >Up</A
222 ></TD
223 ><TD
224 WIDTH="33%"
225 ALIGN="right"
226 VALIGN="top"
227 >Thread Management &#0091;POSIX Section 16&#0093;</TD
228 ></TR
229 ></TABLE
230 ></DIV
231 ></BODY
232 ></HTML
233 >