This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Net BSD network stack posix tasks -


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Alok Singh wrote:
> Thanks for all the suggestions. My only issue is, and a simple one, that
> if I want to send a packet out of the device in the network thread
> context, then I've problems. We have our implementation of message
> queues, mutexes, and other stuff that all use POSIX calls. So the code
> crashes, since I'm trying to make posix calls (while putting the packet
> in the message queue, and using mutexes), in the context of native cyg
> thread context. To overcome this problem, I'm queuing the packet coming
> out of the network stack, and then another posix thread de-queues the
> packet, and sends it out. This is working fine except that performance
> is not that good, and some fine tuning is required. In the limited
> testing I did while sending the packet out in the context of network
> thread, the performance is better, and suits my purpose.

Sorry, but this description doesn't make a lot of sense (to me at least).
There should be no difference doing network I/O from a POSIX thread and
a native eCos thread.  Everything should boil down to socket I/O, which
is the API exported by the network stacks.

Perhaps you can explain in more detail, or provide some code snippets.
What do you mean by "send a packet out of the device in the network thread
context?"

> 
> There is no issue with BSD stack. It runs perfectly fine.  
> 
> regards,
> Alok
> 
> -----Original Message-----
> From: ecos-discuss-owner@ecos.sourceware.org
> [mailto:ecos-discuss-owner@ecos.sourceware.org] On Behalf Of Nick
> Garnett
> Sent: Tuesday, May 29, 2007 10:56 PM
> To: Alok Singh
> Cc: ecos-discuss@ecos.sourceware.org
> Subject: Re: [ECOS] Net BSD network stack posix tasks -
> 
> "Alok Singh" <aloks@broadcom.com> writes:
> 
>> Hi,
>> I don't understand licensing issues much. I've a question. Am I
> allowed
>> to convert network stack threads to posix threads instead of native
> cyg
>> threads?   I've compatibility issues making ecos network stack work
> with
>> my application (Posix based.) Though there are ways to overcome this
>> issue, but they affect the performance of the system.
> 
> (I'm not sure why this has anything to do with licensing.)
> 
> The network threads are internal to the stack. POSIX threads are for
> running application code. The network threads will never run
> application code and so don't need to be POSIX threads. The network
> threads work perfectly well alongside POSIX applications without
> needing to be POSIX threads themselves.
> 
> I don't know what problems you are having, but your suggestion is
> almost certainly the wrong solution. It sounds to me like you are
> trying to do something that eCos doesn't support. Tell us what the
> problem is and maybe someone can offer a better solution.
> 
> 


- --
- ------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
- ------------------------------------------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iD8DBQFGXWckmaKbSsQGV8ARAr3GAKCCnOVJk6HLJcYN9wLLJSVzJLAOlgCgqeUN
+tgYjbY2PUR/MndJIzNO3GM=
=K/bm
-----END PGP SIGNATURE-----

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]