对ucos任务堆栈的困惑

[复制链接]
 楼主| leino11121 发表于 2009-4-9 20:14 | 显示全部楼层 |阅读模式
书中说:每个任务都有自己单独的栈。ucosII允许每个任务有不同的栈空间,以压低应用程序对ram的需求。

不太理解的为什么每个任务有不同的栈空间就可以压低任务程序对ram的需求。

computer00 发表于 2009-4-10 02:00 | 显示全部楼层

估计是写错了吧?难以理解。

380121850 发表于 2009-4-10 09:01 | 显示全部楼层

这样理解不对

假如你有三个任务,为了方便,你统一把任务堆栈都设成同样大小:32
但是实际上,任务1只需要用30
任务2只需要用16
而任务3则需要用32
这样,假如你设置每个任务使用不同大小的堆栈,那总共使用堆栈就比你同样使用32大小来得少。
因为你堆栈设成同样大小的话,那堆栈的大小是根据堆栈需要最大的那个任务来设的。
不知道这样对不对,呵呵
yayayong 发表于 2009-4-10 13:01 | 显示全部楼层

有道理

有道理
 楼主| leino11121 发表于 2009-4-27 18:49 | 显示全部楼层

很有道理

从另外的角度理解她就好。感谢大家
mindshare 发表于 2009-4-28 23:34 | 显示全部楼层

我怎么没有觉得哪里有道理呢???

soso 发表于 2009-4-29 15:15 | 显示全部楼层

我常用OSTaskCreatExt建立任务

   然后测试RAM占用量,榨干浪费的RAM。
foxqiu 发表于 2009-5-2 16:39 | 显示全部楼层

同意

gateway 发表于 2009-5-2 19:21 | 显示全部楼层

一般的操作系统对不同任务都是可分配不同栈空间的

    由于调用复杂度不一样和使用的局部变量多少不同,不同任务使用的栈空间也是不一样的。
    如果使用相同大小的栈空间,浪费也太多了~
Fe_ARM 发表于 2009-5-5 20:22 | 显示全部楼层

楼上说的有道理

楼上说的有道理
一般首席 发表于 2014-3-2 08:22 | 显示全部楼层
学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

47

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部