用贵公司的3687开发产品有一段时间了,可是有一个简单的问题(堆和栈)没有弄明白:
开始新建工程师,一般采用的都是默认设置,只是在工程中会根据需要改变一下Section 设置,在生成向导中有Heap 和stacksize 两个选项。
请问:1. 选不选Heap 对程序会有影响吗? 我的程序并没有new,malloc 等关键字。我程序里设置#define HEAPSIZE 0x004,我试着将sbrk.c 删除掉,就会出现Undefined external symbol "_sbrk" referenced in "malloc" 错误。不知道为什么?
2. 据我了解,程序的中函数参数,临时变量等都会存放到栈(stack)中,可是我试着改变stack大小到很小,例如#pragma stacksize 0x10时候,程序仍然没有问题,运行正常,不知道是怎么回事?
.map 文件如下:
.。。。 。。。
PResetPRG
00000400 0000041b 1c 2
PIntPRG
0000041c 00000443 28 2
P
00000800 00007d0f 7510 2
C
00007d10 000083e5 6d6 2
C$DSEC
000083e6 000083eb 6 2
C$BSEC
000083ec 000083ef 4 2
D
000083f0 00008433 44 2
CDataB
0000a000 0000b757 1758 2
B
0000e800 0000ec69 46a 2
R
0000ec6a 0000ecad 44 2
S
0000ef00 0000efff 100 2
BBEXT
0000fd00 0000ff0f 210 2
C$INIT
0000ff10 0000ff11 2 2
我要赚赏金打赏帖 |
|
|---|---|
| 【S32K3学习整理】使用 LPUART 的loopback 模式实现核间通讯被打赏¥28元 | |
| arduinounoq原生zephyr环境搭建被打赏¥31元 | |
| 树莓派3+Klipper,MPU6050共振补偿被打赏¥41元 | |
| GroveCreatorKit套件+摇杆测评被打赏¥18元 | |
| 设备功耗web监控界面(ESP32C5)被打赏¥28元 | |
| OrangePiZero2W系统被打赏¥33元 | |
| Linux环境下以模拟方式快速实现出入管理功能测试被打赏¥24元 | |
| 树莓派3+Klipper,老3D打印机满血升级被打赏¥33元 | |
| OK1126B-S开发板下串口屏及其应用被打赏¥21元 | |
| 低功耗超声波液位测距仪(ESP32S3)被打赏¥27元 | |
我要赚赏金
