<br><font size=2 face="Courier New">Hi Jan,</font>
<br><font size=2 face="Courier New">&nbsp; thanks for the input. will look
into it.</font>
<br>
<br><font size=2 face="Courier New">Regards</font>
<br><font size=2 face="Courier New">Deepa.<br>
</font><font size=2 face="Arial"><br>
</font><font size=3><br>
<br>
<br>
<b><br>
 </b>&nbsp; &nbsp; &nbsp;</font>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td>
<td><font size=1 face="sans-serif"><b>kiszka@rts.uni-hannover.de</b></font>
<p><font size=1 face="sans-serif">15.10.2004 18:14</font>
<br>
<br>
<br>
<td><font size=1 face="Arial">&nbsp; &nbsp; &nbsp; &nbsp; </font>
<br><font size=1 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; An:
&nbsp; &nbsp; &nbsp; &nbsp;deepa.vijayaraghavan@mbtech-group.com</font>
<br><font size=1 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; Kopie:
&nbsp; &nbsp; &nbsp; &nbsp;rtai@rtai.org</font>
<br><font size=1 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; Thema:
&nbsp; &nbsp; &nbsp; &nbsp;</font><font size=1 face="Arial">Re:
rtnet code in rtai_24.1.12 (from denx)</font></table>
<br>
<br>
<br><font size=2><tt>Paolo Mantegazza wrote:<br>
&gt; deepa.vijayaraghavan@mbtech-group.com wrote:<br>
&gt;&gt;<br>
&gt;&gt; Hello, Thanks a lot for the details.<br>
&gt;&gt; One newbie question:<br>
&gt;&gt; The code you have provided is an interface that enables calling
the linux<br>
&gt;&gt; kernel socket interface directly from the RTAI module. Am I correct?<br>
&gt;&gt; How is RTNET different from this? I mean, since RTNET is hard
real <br>
&gt;&gt; time, I<br>
&gt;&gt; think it does more in terms of converting the drivers etc., to
enable <br>
&gt;&gt; hard<br>
&gt;&gt; realtime. Is my understanding correct?<br>
&gt;&gt; Hence, when I use the kernel socket calls, I do not have hard
real time.<br>
&gt;&gt; For my application this interface is probably what I need. But
as a <br>
&gt;&gt; person<br>
&gt;&gt; new to all this, I am just curious to learn &amp; understand more.<br>
&gt;&gt; If you could point me to some documents/links that explain more
about<br>
&gt;&gt; this(normal kernel drivers &amp; hard realtime drivers), it will
be great!<br>
&gt;&gt;<br>
<br>
Hard real-time networking like RTnet basically has to fulfil these <br>
requirements:<br>
<br>
 &nbsp;o Bounded execution time in all real-time code paths, both in the<br>
 &nbsp; &nbsp;drivers and in the stack. Setup and shutdown can typically
remain<br>
 &nbsp; &nbsp;non-real-time.<br>
<br>
 &nbsp;o Strict resource management (bandwidth, CPU time in common code
paths,<br>
 &nbsp; &nbsp;packet buffers, etc.)<br>
<br>
And additionally when doing communication over unmodified Ethernet:<br>
 &nbsp;o Media access control which reliably avoids collisions (when using<br>
 &nbsp; &nbsp;hubs) or congestions (in switches)<br>
<br>
Some more information can be found on rtnet.sf.net. And for even more <br>
details about how RTnet actually achieves this, you are on the wrong <br>
mailing list ;).<br>
<br>
&gt; Correct, the functions provided are not for real time, they use plain
<br>
&gt; Linux.<br>
&gt; <br>
&gt; I think there is no need for a more specific documentation. When in
the <br>
&gt; need of using both Linux and RTNet for the same application you have
to <br>
&gt; care of the coding. In RTAI netrpc.c there is the simple way we adopted.
<br>
&gt; An example application integrating Linux and RTNet networking can
be <br>
&gt; found at: http://www.aero.polimi.it/~mbdyn/mbdyn-rt/index.html.<br>
&gt; <br>
<br>
You can use Linux networking on top of RTnet, i.e. in spare time without
<br>
interfering with critical data.<br>
<br>
Jan<br>
</tt></font>
<br>