swanghn 发表于 2023-9-16 18:03:29

在任务中调用函数时,调用的函数里面使用的栈也会占用任务的栈空间吗?

我在freertos中创建一个任务x_task(),给这个任务分配的栈大小时512个字节,在x_task()任务中运行了一个函数temp(),在temp()这个函数中,定义一个1024字节的数组,然后给这个数组中的每个元素赋值,这样会导致x_task的栈溢出吗?



我的主要问题是:在任务中调用函数时,调用的函数里面使用的栈也会占用任务的栈空间吗?还是这两个栈没有关系呢?

eric2013 发表于 2023-9-16 22:36:25

此任务里面的局部变量,数组,函数嵌套等,都是占用的任务栈空间,此贴做了较详细说明。

第11章 FreeRTOS任务栈大小确定及其溢出检测
https://www.armbbs.cn/forum.php? ... id=21084&fromuid=58
(出处: 硬汉嵌入式论坛)

swanghn 发表于 2023-9-27 16:45:50

非常感谢:)
页: [1]
查看完整版本: 在任务中调用函数时,调用的函数里面使用的栈也会占用任务的栈空间吗?