告诉你的是 startup_stm32f2xx.o( startup_stm32f2xx.s)
实现了一个段(section) 名字叫 STACK ,地址 0x2000be28 ,大小16384
这个section当然是
Mandelbrot_Set 发表于 2015-12-24 14:00
startup.s的作做法大概是
定义1个section,叫STACK.
里面有一个数组(一块ram),叫Stack_Mem.
谢谢你的耐心解释,现在彻底弄懂了,因为我用了LWIP的内存分配机制,所有STM32的堆被隐藏了,重新用C标准库,就能看到堆和栈的地址了 iamchritian 发表于 2015-12-25 09:33
谢谢你的耐心解释,现在彻底弄懂了,因为我用了LWIP的内存分配机制,所有STM32的堆被隐藏了,重新用C标准 ...
能否解释下“LWIP的内存分配机制”? 本帖最后由 role_2099 于 2015-12-25 11:26 编辑
我是进来学习的 moyanming2013 发表于 2015-12-25 10:57
能否解释下“LWIP的内存分配机制”?
这个还真没用过:L Mandelbrot_Set 发表于 2015-12-25 12:00
这个还真没用过
LWIP的内存,在内部做了内存池和内存堆两种内存的分配方式,在opt.h中有一个宏定义,如果MEM_LIBC_MALLOC定义为0和1,有不同的分配方式。
一、MEM_LIBC_MALLOC == 0
这种情况LWIP的内存池和内存堆都是在STM32的RAM空间的全局区,取的一块内存,LWIP协议栈给出了特殊的处理,以便接收和发送数据
二、MEM_LIBC_MALLOC == 1
这种情况下
1、LWIP的内存池是在STM32的全局区
2、LWIP的内存堆是在STM32的堆中
好深奥,看不懂,先标记,回头再来学习!
页:
1
[2]