OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2614|回复: 4

关于freeRTOS堆栈问题,堆栈大小如何设置?

[复制链接]

13

主题

66

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2021-1-9
在线时间
41 小时
发表于 2022-5-27 14:25:19 | 显示全部楼层 |阅读模式
1金钱
我看原子哥队列操作实验每个任务分配的栈深度为256,实际就是1024字节,不算开始任务剩下俩任务也用了2048字节,但是启动文件中栈的大小为1024字节这明显超出了,为啥程序还可以正常执行没有出现栈溢出呢?

最佳答案

查看完整内容[请看2#楼]

此栈非彼栈,任务栈是从configTOTAL_HEAP_SIZE里分配,只要所有任务栈大小不超过configTOTAL_HEAP_SIZE就可
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

48

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
372
金钱
372
注册时间
2018-9-14
在线时间
51 小时
发表于 2022-5-27 14:25:20 | 显示全部楼层
此栈非彼栈,任务栈是从configTOTAL_HEAP_SIZE里分配,只要所有任务栈大小不超过configTOTAL_HEAP_SIZE就可
回复

使用道具 举报

2

主题

592

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1458
金钱
1458
注册时间
2019-7-28
在线时间
137 小时
发表于 2022-5-27 15:47:32 | 显示全部楼层
帮顶,堆栈空间是固定的
回复

使用道具 举报

13

主题

66

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2021-1-9
在线时间
41 小时
 楼主| 发表于 2022-5-28 19:16:58 | 显示全部楼层
lpwithv 发表于 2022-5-27 15:47
帮顶,堆栈空间是固定的

我现在想启动文件中栈大小的设置并无太大意义,栈溢出不是指栈的大小超过启动文件中设置的最大值而是指一个栈覆盖了另外一个栈的内容,或者指定了一个任务的栈为100字节,实际使用超过这么多,这才是真正的溢出
回复

使用道具 举报

13

主题

66

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2021-1-9
在线时间
41 小时
 楼主| 发表于 2022-6-4 14:38:54 | 显示全部楼层
xiaoxiaoren 发表于 2022-5-27 14:25
此栈非彼栈,任务栈是从configTOTAL_HEAP_SIZE里分配,只要所有任务栈大小不超过configTOTAL_HEAP_SIZE就可

启动文件里的配置是主堆栈,我图片里的是任务栈
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-25 13:36

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表