This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
uC/IP ported to eCos (PPP/TCP/IP)
- From: Fredrik <fredrik at wespot dot com>
- To: ecos-discuss at sources dot redhat dot com, robertdickenson at users dot sourceforge dot net, guylancaster at users dot sourceforge dot net
- Date: Fri, 02 Jul 2004 12:55:19 +0200
- Subject: [ECOS] uC/IP ported to eCos (PPP/TCP/IP)
- References: <003801c46019$20b9e880$710101c1@europetechnologies.com>
We have ported uC/IP to eCos which is a smallish TCP/IP stack developed
in ANSI C for embedded systems.
It supports e.g. PPP and we have been using it successfully for more
than a year.
During this time fixed some really serious bugs and now it seems to work
very well. We have been using PPP/TCP/IP over a GPRS modem (it works
fine in the contries we have tried, e.g. Sweden, UK, even Brazil!).
If anyone are interested, we would like to contribute the bugfixes and
eCos port. The licence is BSD since the code is based on the BSD stack.
The project is hosted at "http://sourceforge.net/projects/ucip/" but
unfortunately nothing seems to have happend for the last few years.
Maybe its better to contribute the code to the eCos repository? Maybe
the existing BSD-based eCos stacks and the Siemens stack make this stack
superfluous?
Here follows a simple example of a memory benchmark for the files in
uC/IP for different sections (using arm-elf-gcc 3.4.0) to compare with
other BSD-based stacks perhaps.
(The stack does not allocate any dynamic memory, it handles all memory
allocation internally with static memory, which is a feature.)
File name text data bss rodata
------------------------------ ---------- ---------- ---------- ----------
net_uCIP_InetAddr.o 568 0 0 0
net_uCIP_devio.o 16 0 0 0
net_uCIP_net.o 592 22 1293 44
net_uCIP_netaddrs.o 172 28 0 0
net_uCIP_netarp.o 2564 4 1680 116
net_uCIP_netauth.o 2840 2 284 328
net_uCIP_netbootp.o 0 0 0 0
net_uCIP_netbuf.o 6012 0 69640 224
net_uCIP_netchap.o 3340 76 176 420
net_uCIP_netchat.o 1408 0 4 0
net_uCIP_netchpms.o 0 0 0 0
net_uCIP_netconf.o 0 0 0 0
net_uCIP_netdebug.o 52 0 0 0
net_uCIP_netdhcp.o 2712 0 0 0
net_uCIP_neteth.o 552 0 38 24
net_uCIP_netether.o 692 4 32 0
net_uCIP_netfsm.o 3296 0 4 0
net_uCIP_neticmp.o 1656 32 184 96
net_uCIP_netip.o 2012 0 90 12
net_uCIP_netipcp.o 5244 120 192 200
net_uCIP_netlcp.o 9836 188 700 456
net_uCIP_netmagic.o 8 0 0 0
net_uCIP_netmd5.o 3636 64 0 0
net_uCIP_netpap.o 1892 60 48 204
net_uCIP_netppp.o 5800 44 13412 712
net_uCIP_netrand.o 316 4 16 0
net_uCIP_netresolv.o 4492 38 628 156
net_uCIP_netsock.o 904 2 1408 0
net_uCIP_netsocka.o 196 0 0 0
net_uCIP_nettcp.o 15200 178 4392 1052
net_uCIP_nettimer.o 1304 0 16532 20
net_uCIP_netudp.o 2656 4 452 128
net_uCIP_netvj.o 0 0 0 0
net_uCIP_os.o 1284 0 3012 164
net_uCIP_trace.o 408 0 0 280
------------------------------ ---------- ---------- ---------- ----------
TOTAL 81660 870 114217 4636
(I'm sure the mem size could be reduced. This is _all_ code [not
linked], and also the amount of internal data buffers could be reduced.)
/Best Regards,
Fredrik Hederstierna
WeSpot AB
IDEON Research Park
Lund SWEDEN
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss