This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Memory footprint


Andrew Lunn a écrit :
$ arm-elf-size.exe a.out
   text    data     bss     dec     hex filename
  41920    1512    8028   51460    c904 a.out

I suppose that this means the binary will be 51460Kb in size?
No. These are in units of bytes, not kilo bits. 51460Kb is about
6MBytes which makes no sense.
True. In fact, 51460Kb, is closer to 50Mb... ;)
I mistyped and added a "K". My mistake!! :)
The binary will be 41920 + 1512 bytes. You also need 8028bytes of
statically allocated RAM. The size of the heap is not show here.
OK. Thanks.
I am using a Phlips 2106 processor with 128Kb EEPROM and 64Kb RAM.
Do you think I can fit in LwIP + PPP + Zlib in this?
zlib will be a problem. In its default configuration it will allocate
64Kbytes from the heap..... You can make is use less memory, but it
will then no longer decompress data compressed with the default zlib
configuration. So i don't recommend zlib. lwip + PPP does seems
reasonable with 128Kb + 64Kb.
I only need to compress data for gzip using zlib. I don't need to uncompress files coming from some other place. Do you think zlib could work with only 32Kb? Do you know of any other gzip compatible libraries?
The linker is giving me errors :
$ arm-elf-gcc -I../../ecos_install/include hello.c -L../../ecos_install/lib -Ttarget.ld -nostdlib
/usr/lib/gcc-lib/arm-elf/3.4.0/../../../../arm-elf/bin/ld: l'adresse 0x2624c de a.out de la section .text n'est pas dans la r?gion rom
/usr/lib/gcc-lib/arm-elf/3.4.0/../../../../arm-elf/bin/ld: l'adresse 0x2624c de a.out de la section .fini n'est pas dans la r?gion rom
/usr/lib/gcc-lib/arm-elf/3.4.0/../../../../arm-elf/bin/ld: l'adresse 0x2aff1 de a.out de la section .rodata n'est pas dans la r?gion
rom
/usr/lib/gcc-lib/arm-elf/3.4.0/../../../../arm-elf/bin/ld: l'adresse 0x2aff4 de a.out de la section .rodata1 n'est pas dans la r?gion rom
/usr/lib/gcc-lib/arm-elf/3.4.0/../../../../arm-elf/bin/ld: l'adresse 0x2aff4 de a.out de la section .fixup n'est pas dans la r?gion rom
/usr/lib/gcc-lib/arm-elf/3.4.0/../../../../arm-elf/bin/ld: l'adresse 0x2aff4 de a.out de la section .gcc_except_table n'est pas dans la r?gion rom
/usr/lib/gcc-lib/arm-elf/3.4.0/../../../../arm-elf/bin/ld: l'adresse 0x4001ca20 de a.out de la section .bss n'est pas dans la r?gion ram


I'm sorry, but the error messages are in french.
>From what I gather, the code is too big for RAM and ROM?

This should fit, so it suggests a problem with your linker script. Is it trying to put everything in RAM?

The program I was trying to compile in the second part has nothing to do with the numbers I gave in the first part of this email.
This program contains lwIP + PPP + zlib + debug information + lots of other things.
I just wanted to check if the error messages I was seeing were due to code too large.


--
Emmanuel Viollet
Software engineer
Webdyn
e-mail : Emmanuel.Viollet@webdyn.com
Tel    : +33 (0)1 39 04 29 55


-- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]