lwip-users
[Top][All Lists]
Advanced

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

Re: [lwip-users] sys_time_out


From: David Ryan
Subject: Re: [lwip-users] sys_time_out
Date: Thu, 01 Apr 2004 09:21:55 +1000
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6) Gecko/20040113

Shawn,

For the API to work you need to ensure that your system architecture is setup for multithreading. eg. The message box code you implement must ensure locks. You are also required to implement the timing mechanism to ensure that timers are called at the right time.

I don't know if your domain playstation.sony.com means that you are working with a playstation type environment, however, we have implemented lwip for the Playstation2. You can see the implementation by browsing our cvs server at cvs.ps2dev.org

We have tried a number of different methods for calling the timer code. One method was based on the vertical blank handler before, which was before we could get some other timing code working on the IO Processor. We have also modified the lwip code to make a seperate thread send a message for timing code to the API thread. This was due to some concerns of how multithreading safe lwip is in timer code.

The lwip implementation for Playstation 2 is broken up into two parts.. cvs.ps2dev.org/lwip is the base lwip code with a few modifications. See the LWIP_071 branch for the most recent implementation. cvs.ps2dev.org/ps2ip has the system architecture code for Playstation 2. ps2ip/ee has the emotion engine implementation which includes a RPC mechanism to call lwip on the IOP. ps2ip/iop/ps2ip has the main lwip code. ps2ip/iop/ps2ips has the server side RPC code. Once again, see the LWIP_071 branch on ps2ip to see the latest code. The new branch is quite different from earlier implementations.

You should find plenty of implementations to review to see how things are done. lwip also comes with a number of implementations which are worth reviewing.

Hope that helps,
David.


address@hidden wrote:

From what I read from the mailing list, the timer system is supposed to work, however, it didn't work on my system, and because of that, I wrote a separate thread to regularly check the timeout values and decrease them. The system seems working fine until I start to test TCP part of the code. I have about 20% success rate in establish a TCP connection with a server, and 80% failure, and I am suspecting maybe my timer thread is causing that problem. So I am just curious to know, how do I run the native timer system in lwip stack without introducing an outside mechanism? I learned someone is using sys_msleep function call, but that seems would stall my process. If anyone could give me a brief sample example on how to run the lwip timer, I would greatly appreciate your time and help.

Sincerely,

Shawn

------------------------------------------------------------------------

_______________________________________________
lwip-users mailing list
address@hidden
http://mail.gnu.org/mailman/listinfo/lwip-users






reply via email to

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