|
From: | Marko Panger |
Subject: | Re: [lwip-users] Stackless, non-preemptive uSmartX RTOS and lwIP |
Date: | Fri, 27 Jan 2006 22:57:35 +0100 |
User-agent: | Mozilla Thunderbird 1.0.7 (Windows/20050923) |
Hi Christiaan, Thanks a lot for your comments. I also got an impression that preemptive kernel is required for running and supporting sequential api. I will go with raw api anyway. Thanks, marko Christiaan Simons wrote: address@hidden wrote on 26-01-2000 17:57:05:I have already passed through the lwIP sources and documentation. If I understand well it can works in two modes. The so called raw api and sequential api mode. The raw api mode doesn't require an underlying RTOS, but the latter does. The raw API mode should be easy and straight forward to integrate into my os.We've used it for most of our lwip based projects, I can recommend it. The sequential API is currently unmaintained, but it might work for some ports.The sequential API looks a little bit tricky if the os is not-preemptive. If you look at the sample code below you can get an idea of how for example semaphores are used in my rtos. Basically they require the task to return if the resource is not available. The task will be than resumed by a semaphore post or a timeout event. Applying this to lwIP would require modification of the API calls in such a way that multiple calls of the same API call can be made if the semaphore is not available at the moment and than calling the same API function with "semaphore" available parameter...Reading through doc/sys_arch.txt I get the impression the usage of a preemptive kernel is assumed. Using a non-preemptive kernel seems a bit odd nowadays. I believe OSEK is one of the last one providing it.Now I am kindly referring to you for some comments on this implementation. I'm also a little bit confused on sequential API calls - which file contains the available calls ? Is this api_msg.c, sockets or some other additional file ?There are two layers on top of each other. The api_msg provides the actual serialisation, the socket layer just builds upon this layer. You can use both layers. Bye, Christiaan Simons This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager. This message contains confidential information and is intended only for the individual named. If you are not the named addressee you should not disseminate, distribute or copy this e-mail. _______________________________________________ lwip-users mailing list address@hidden http://lists.nongnu.org/mailman/listinfo/lwip-users |
[Prev in Thread] | Current Thread | [Next in Thread] |