Emanuele Clerici wrote:
> Jan Kiszka wrote:
>> Emanuele Clerici wrote:
>>  
>>> Jan Kiszka wrote:
>>>    
>>>> Emanuele Clerici wrote:
>>>>  
>>>>      
>>>>> Jan Kiszka wrote:
>>>>>           
>>>>>> Emanuele Clerici wrote:
>>>>>>  
>>>>>>               
>>>>>>> It's possible to send a data packet with an RTnet socket to a linux
>>>>>>> socket.
>>>>>>> I have tried it but it seem doesn't work.
>>>>>>>                         
>>>>>> Over a real network or locally (as interprocess communication means)?
>>>>>> The former is possible of course (via UDP/IP or your own Ethernet
>>>>>> protocol). The latter is not because the Linux networking stack and
>>>>>> RTnet are strictly separated (for good reasons). The question is what
>>>>>> kind of communication you want to realise this way.
>>>>>>
>>>>>> Jan
>>>>>>
>>>>>>                   
>>>>> over a real network.
>>>>> I try to explain:
>>>>> I have 2 nodes 192.168.3.1 (A) and 192.168.3.2 (B)
>>>>> I load rtnet and start it on A and B and rt_ping works fine
>>>>> On A I send using rt_socket to B
>>>>> On B i couldn't use it because i don't have hard_real_time context so
>>>>> rt_dev_recvfrom doesn't work, so i try with linux socket but it seem
>>>>> doesnt'work
>>>>>
>>>>>             
>>>> If RTnet is active on node B, Linux will not see the UDP packets
>>>> arriving for that node. To forward data arriving via RTnet on B to the
>>>> Linux domain, just create a borderline thread that is switching back
>>>> and
>>>> forth between RT and Linux mode (in user-space, of course).
>>>>
>>>> If you don't have any strict timing requirements for B at all, you may
>>>> also drop RTnet here and communicate via standard Linux with node A.
>>>> But
>>>> be careful to block unwanted traffic from B to A to avoid
>>>> indeterministic impact on A. Some firewall on B may serve as a filter
>>>> here.
>>>>
>>>> Jan
>>>>
>>>> PS: Don't forget to reply-to-all...
>>>>
>>>>         
>>> with "borderline thread" I had to use a real time task and
>>> rt_dev_recvfrom, it's ok?
>>>     
>>
>> Yep.
>>
>>  
>>> Ther's a way to avoid using them without
>>> dropping down rtnet on node B?
>>>     
>>
>> What disadvantage do you fear when mapping one of your application's
>> thread to RT?
>>
>> Jan
>>
>>   
> only i don't like to map all my application on node B as realtime
> because i don't need it except for receiving data from node A, and I
> don't like so much creating a little "child" application for receiving
> because so my application complexity increases.

Well, my experience is that complexity in real-time systems doesn't come
with such minor implementation details (given that the involved
RT-components are needed on other nodes anyway), it comes with the
system design itself. Just because some way appears to be easier from
the programming POV doesn't mean the hidden complexity will not bite you
elsewhere.

My current feeling is that you either do not need RTnet at all (unless
there will be also strict RT applications running on B as well) or you
are about to mis-design node B.

Jan

Attachment: signature.asc
Description: OpenPGP digital signature

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
RTnet-users mailing list
RTnet-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rtnet-users

Reply via email to