This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Re: ecos + lwip
- From: agfa prayoga s <fillariabrancoftii at yahoo dot com>
- To: Simon Kallweit <simon dot kallweit at intefo dot ch>
- Cc: Sergei Gavrikov <sergei dot gavrikov at gmail dot com>, Mandeep Sandhu <mandeepsandhu dot chd at gmail dot com>, ecos-discuss <ecos-discuss at ecos dot sourceware dot org>
- Date: Thu, 27 Aug 2009 07:20:40 -0700 (PDT)
- Subject: Re: [ECOS] ecos + lwip
Hi Simon,
okay,,, maybe i will try your patch for lwIP 1.3.0 first,,,
thanks
--
Agfa
--- On Thu, 8/27/09, Simon Kallweit <simon.kallweit@intefo.ch> wrote:
From: Simon Kallweit <simon.kallweit@intefo.ch>
Subject: Re: [ECOS] ecos + lwip
To: "agfa prayoga s" <fillariabrancoftii@yahoo.com>
Cc: "Sergei Gavrikov" <sergei.gavrikov@gmail.com>, "Mandeep Sandhu" <mandeepsandhu.chd@gmail.com>, "ecos-discuss" <ecos-discuss@ecos.sourceware.org>
Date: Thursday, August 27, 2009, 7:16 AM
agfa prayoga s wrote:
> Hi all,,,
>
> did lwIP 1.3.0 port that Simon's patched for eCos 3.0 has improvement in
> memory footprint?
>
> i am trying to run httpd example under lwip package on AT91SAM7X-EK board
> filled with AT91SAM7X256. that microcontroller only have 256KB ROM and
> 64KB RAM.
>
> i have compiled the example successfully only with PBUF value 10, disable DHCP,
> SLIP, PPP, raw socket support, IP forwarding.
>
> using arm-eabi-size, httpd binary has size:
> .text : 82740
> .data: 5428
> .bss: 50792
>
> notice that the sum of .data and .bss is almost 56KB, near 64KB.
>
> if i increase the PBUF value over 10(default value is 60), compilation process will failed with error that
> is no longer room in .bss because the limitation in 64KB.
>
> maybe this is out of topic, but i appreciate your assistance...
Well that's hard to say. You would need to ask that question on the lwip list. I don't know if there are major differences in memory consumption between lwip 1.1.0 and 1.3.1. One advantage of my port is that it can be run in a completely polled mode (I call it simple mode), so you can run all your network code in a single thread, instead of multiple threads (at least 3). The old port did not directly offer that option. This can spare you quite a bit of memory (stacks). Notice that when using the simple mode, you will have to use the raw APIs (see httpd_simple example) and cannot use the netconn and socket APIs. In my project, I use the polled mode for the exact same reason (memory) with good results.
Simon
-- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss