Part Number: MSP432E411Y
Hi,
I would like to know how to distinguish between .priheap and .sysmem in the linker command file section.
Both seem to be used in the heap area, but I don't quite understand what role each of them plays.
Thanks,
Astro
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Part Number: MSP432E411Y
Hi,
I would like to know how to distinguish between .priheap and .sysmem in the linker command file section.
Both seem to be used in the heap area, but I don't quite understand what role each of them plays.
Thanks,
Astro
The output sections that are, by default, created by the compiler are documented in the TI ARM compiler manual, in the sub-chapter titled Specifying Where to Allocate Sections in Memory. Among those sections is .sysmem, which is documented as ...
Memory pool (heap) for dynamic memory allocation (malloc, etc)
I don't know where the .priheap output section comes from. Search for it in the linker map file. That will show the name of the library (if there is one) and object file it comes from. Try to find the documentation for that file.
Please let me know if these suggestions resolve the problem.
Thanks and regards,
-George
I think the .priheap section could be for the Heap buffer used by the TI-RTOS module ti.sysbios.heaps.HeapMem, based upon the thread RTOS/MSP432E401Y: SDRAM as Default Heap
Hi, George, Chester
There was so little information about .priheap in the documentation that it was difficult to determine what it would be used for. Could you explain how .sysmem and .priheap are used differently?
-sysmem…heap for dynamic memory allocation
- priheap... buffer in heap memory
I don't quite understand the meaning and relationship of the above.
[Background of the question]
In the sample code linker, HEAPSIZE is 0x20000, and half of the MAX size of internal SRAM (0x40000) is also allocated. I'm considering reducing the size of the .priheap section, especially if it's not needed.
Thanks,
Astro
Hello Astro,
Unfortunately the documentation that is provided is the extent of what we can offer. The TI-RTOS implementation for .priheap was not done by our team and I was not able to dig up any additional resources to further explain the differences between these heaps.
The post Chester linked is about as descriptive outside of the official documentation that is available on the topic.
Certainly not an answer I expect you to be satisfied with in any manner, but I just don't have anything to offer for this specific request.
Best Regards,
Ralph Jacobi