初级会员
- 积分
- 128
- 金钱
- 128
- 注册时间
- 2014-3-25
- 在线时间
- 9 小时
|
我使用的是ucosII操作系统,stm32f407芯片,建立十几个任务,其中task7如下
#define PARA_TASK_PRIO 18 //设置任务优先级
#define PARA_STK_SIZE 512 //设置任务堆栈大小
OS_STK PARA_TASK_STK[PARA_STK_SIZE]; //创建任务堆栈空间
void task7_para(void *pdata); //任务函数接口
在程序中查询堆栈使用情况,输出:
task:7: free:436,used:1612,errno:0
程序修改如下:
#define PARA_STK_SIZE 512+512 //设置任务堆栈大小
task:7: free:436,used:3660,errno:0
task7程序没有任何改变,只增加堆栈,但是运行结果却是增加的栈全部被使用了,也就是used增加了512*4,而free一点没改变,这是为什么啊?
有没有大侠指导一下
|
|