搜索
bottom↓
回复: 9
打印 上一主题 下一主题

求教高人:栈会不会被MDK特意放到所有全局变量的后面去

[复制链接]

出0入25汤圆

跳转到指定楼层
1
发表于 2012-4-11 15:59:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

我一直认为,Keil MDK中的链接器会特意将栈放到RAM中的所有的全局变量之后,但是现在有一位同仁不同意这个观点,
他的观点是:栈空间不一定要放在全局变量后头,就算碰巧被链接器放在后面也是巧合

希望高人可以为我等菜鸟上一课,讲解讲解。。。



此一帖的具体起因见:http://www.ourdev.cn/forum.php?m ... p;extra=#pid5736798

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

2
发表于 2012-4-11 16:05:34 | 只看该作者
你的看法不对,自己实验一下就知道了。

为了栈定义,MDK/RVCT专门在Scatter中有如下语法:
MAIN_STACK          0x20000000+2*1024   EMPTY   -2048
{}

出0入25汤圆

3
 楼主| 发表于 2012-4-11 16:37:02 | 只看该作者
有结论了,我是错的,
"bluelucky"大侠的观点是对的,即“栈空间不一定要放在全局变量后头,就算碰巧被链接器放在后面也是巧合"

出0入0汤圆

4
发表于 2012-4-11 16:39:04 | 只看该作者
栈的尺寸、位置都是可以指定的。
一般栈放在ram的最高端(这不是碰巧),主要是因为栈是向下(低端)生长的,放在高端可以较好地避免栈溢出带来的副作用。

出0入25汤圆

5
 楼主| 发表于 2012-4-11 16:57:17 | 只看该作者
mored 发表于 2012-4-11 16:39
栈的尺寸、位置都是可以指定的。
一般栈放在ram的最高端(这不是碰巧),主要是因为栈是向下(低端)生长的 ...

”一般栈放在ram的最高端(这不是碰巧),主要是因为栈是向下(低端)生长的,放在高端可以较好地避免栈溢出带来的副作用。“

我以前也是你这种想法,不过,现在我的想法改变了,建议看看下面的帖子里面的内容:
http://www.ourdev.cn/forum.php?m ... p;page=1#pid5736964

尤其看一下,bluelucky和dr2001两位大侠的回帖,,你的看法会改变的,,,

出0入0汤圆

6
发表于 2012-4-11 17:30:02 | 只看该作者
标记一下,等仔细研究一下再来回复!

出5入0汤圆

7
发表于 2021-4-13 12:12:19 | 只看该作者
XIVN1987 发表于 2012-4-11 16:57
”一般栈放在ram的最高端(这不是碰巧),主要是因为栈是向下(低端)生长的,放在高端可以较好地避免栈 ...

这个帖子的链接还能找到吗

出0入25汤圆

8
 楼主| 发表于 2021-4-13 13:20:34 | 只看该作者
gnail092 发表于 2021-4-13 12:12
这个帖子的链接还能找到吗


https://www.amobbs.com/thread-5465782-1-1.html

出5入0汤圆

9
发表于 2021-4-13 13:22:18 | 只看该作者
XIVN1987 发表于 2021-4-13 13:20
https://www.amobbs.com/thread-5465782-1-1.html

谢谢,我已经在你的帖子里找到,

出0入362汤圆

10
发表于 2021-4-13 15:26:14 | 只看该作者
keil我不知道, gcc都是在lds文件里指定的, 你的lds文件里怎么写它怎么放。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-22 23:23

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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