03-01-2012 07:52 AM
Hello,I am looking for a possibility to dynamically allocate memory in OnChip-RAM, while heap is in external RAM. Has anyone experiences regarding this topic?
03-01-2012 10:02 AM
Yes Socrates, I'm talking about malloc().The thing is, that I want to improve the LwIp-Stack and there some structures (e.g. ethernetif, pbuf) allocated dynamically. As a workaround I did allocate the memory statically, but I think for a better structural design it would be nicer to allocate those structures dynamically at internal RAM. Maybe a solution could be to reassign the heap to internal RAM, then malloc(), and then put the Heap back to external RAM. But the LwIp malloc-function saves and uses the lowest free block for allocation, which is always in external Ram. Sure, I know that I could write my own malloc(), but I wanted to know if someone knows an easier or more common way.
03-01-2012 11:15 AM
For embedded use it is actually better to avoid malloc() - except maybe at startup. That way you don't suddenly run out of memory in some important code path.