lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-users] LWIP Process Model confusion:


From: address@hidden
Subject: Re: [lwip-users] LWIP Process Model confusion:
Date: Sun, 14 Dec 2008 10:58:51 +0100
User-agent: Thunderbird 2.0.0.18 (Macintosh/20081105)

sandy tewari wrote:
Thanks for your help guys. So i am trying to implement it.
Things that i need to do:

1. change sys_arch.c to work on processes not threads: i am going to exec a process now, rather than p_thread_create 2. secondly, i want to make them share common data: is that only going to be on mailboxes? so i just have to make a way to attach sys_mbox_new
 data on to shared memory?
3. What about the pcb connection information? Don't they would want to share too? it will be great to know which structure to include in?
netconn?

I don't want to bring you down, but I guess implementing this might not be as easy as you think and might involve changing some of the lwIP core code (which is normally not a good idea since you lose the option to just upgrade to new versions).

As I said before, the problem is that sys_arch_mbox_post does NOT know which kind of data it shall post. Therefore, without changing this, you would have to move ALL memory passed through mboxes (e.g. pbufs, apimsg, etc.) to shared memory - although this might not work at all since some of this data is located on the stack of a socket thread!

To get it working properly, a change in the lwIP code is necessary: we would have to move from generic message passing that relies on pointers to a more specific way: if sys_arch_mbox_post would know the type of data to post, it could (in multiprocess environments) copy the data insted of passing a pointer and posting it to another process. If you create a good working patch for this which does not interfere with multi_threading_, I guess chances would be high it gets included in the main source. But I doubt any of the active developers finds the time to do this for you :-(


Simon




reply via email to

[Prev in Thread] Current Thread [Next in Thread]