ZHCU875Z August 2001 – October 2023 SM320F28335-EP
对于 malloc() 使用的 C 运行时存储器池,C/C++ 编译器使用一个名为 .esysmem 的未初始化段。可在链接时使用 --heap_size 选项来设置此存储器池的大小。--heap_size 选项的语法为:
--heap_size= size
size 必须是一个常量。以下示例定义了一个 4K 字的堆:
cl2000 --run_linker --heap_size=0x1000 /* defines a 4k heap (.esysmem section)*/
链接器创建 .esysmem 段的前提是输入文件中存在 .esysmem 段。
链接器还会创建全局符号 __SYSMEM_SIZE(对于 COFF)或 __TI_SYSMEM_SIZE(对于 EABI),并为其分配一个等于堆大小的值。默认大小为 1K 字。有关在 C/C++ 代码中引用链接器符号的信息,请参阅节 8.6。有关 C/C++ 链接的更多信息,请参阅节 8.11。