- 1
- 2
- 3
- 4
- 5
段属性与变量定位的底层实践手记
资料介绍
段属性与变量定位工程应用笔记 第1章 概述 做嵌入式底层开发的这些年,我越来越体会到,段属性(section attribute)和变量定位(variable placement)这两个概念,看似基础,却是连接编译器、链接器与硬件地址空间的关键纽带。很多莫名其妙的 bug,比如变量被意外复位、某些数据启动后是乱的、或者看门狗复位后变量值还在,追根溯源都跟这两件事有关。这篇笔记,我想把自己踩过的坑和积累的心得整理下来。 先说我的一个总判断:段属性本质上是给编译器看的"分类标签",告诉它这份数据或代码应该归到哪一类;而变量定位是给链接器看的"放置指令",决定这块东西最终落在内存的哪个地址。两者配合,才能把程序正确地安放到目标硬件上。很多初学者只关注 C 代码的逻辑,却忽略了这些底层布局规则,等到真机调试时才发现问题,往往需要花很长时间排查。 下面我按自己习惯的套路来写,先讲清楚目标,再展开概念、公式、电路和例题,最后汇总要点。这样既方便自己回顾,也希望能帮到正在入门的同行。 第2章 学习目标 这一章的内容,我希望读完的人能达到几个具体目标。第一,能够解释段属性的含义,分清代码段、数据段、BSS 段、只读数据段在链接脚本中各自扮演的角色。第二,能够根据实际需求,为一个变量或一组函数指定特定的段属性,让它们被放置到期望的地址区域。 第三,能够读懂常见的链接脚本,理解 MEMORY 和 SECTIONS 两个指令块的作用,并能在脚本中新增或修改一个区域的定义。第四,能够在遇到变量地址异常、数据被覆盖等问题时,具备基本的定位思路,而不是盲目猜测。第五,能够把段属性与启动代码、堆栈初始化结合起来思考,形成一个整体的内存布局观。 坦率地说,第五点是我后来才真正悟到的。早期我只关心某变量能不能访问,后来才发现,段布局如果和启动代码的搬运、清零逻辑不一致,会导致变量初始化完全失效。
部分文件列表
| 文件名 | 大小 |
| 段属性与变量定位的底层实践手记.docx | 41K |
最新上传
-
江岚 打赏100.00元 17小时前
用户:潇潇江南
-
他山之石可攻玉 打赏50.00元 18小时前
用户:烟雨
-
21ic下载 打赏1.00元 21小时前
用户:王小琪
-
yahuang001 打赏3.00元 3天前
-
yahuang001 打赏1.00元 3天前
-
zhongshaoxiong 打赏3.00元 3天前
-
他山之石可攻玉 打赏60.00元 3天前
用户:烟雨
-
江岚 打赏210.00元 3天前
用户:潇潇江南
-
江岚 打赏100.00元 3天前
-
21ic下载 打赏310.00元 3天前
用户:gsy幸运
-
21ic下载 打赏310.00元 3天前
用户:zhengdai
-
21ic下载 打赏310.00元 3天前
用户:江岚
-
21ic下载 打赏210.00元 3天前
用户:潇潇江南
-
21ic下载 打赏60.00元 3天前
用户:他山之石可攻玉
-
21ic下载 打赏60.00元 3天前
用户:烟雨
-
21ic下载 打赏60.00元 3天前
用户:w178191520
-
21ic下载 打赏60.00元 3天前
用户:w993263495
-
21ic下载 打赏110.00元 3天前
用户:xzxbybd
-
21ic下载 打赏60.00元 3天前
用户:zq_1943
-
21ic下载 打赏20.00元 3天前
用户:kk1957135547
-
21ic下载 打赏20.00元 3天前
用户:sun2152
-
21ic下载 打赏20.00元 3天前
用户:铁蛋锅
-
21ic下载 打赏20.00元 3天前
用户:xuzhen1
-
21ic下载 打赏20.00元 3天前
用户:w1966891335
-
21ic下载 打赏35.00元 3天前
用户:有理想666
-
21ic下载 打赏15.00元 3天前
用户:nuaanuaa111
-
21ic下载 打赏20.00元 3天前
用户:liqiang9090
-
21ic下载 打赏15.00元 3天前
用户:ningmengge
-
21ic下载 打赏10.00元 3天前
用户:mulanhk
-
21ic下载 打赏5.00元 3天前
用户:asys
-
21ic下载 打赏10.00元 3天前
用户:舞蹈荀彧
-
21ic小能手 打赏5.00元 3天前
资料:磁编码器开源方案
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
江岚 打赏20.00元 3天前
-
江岚 打赏50.00元 3天前
-
江岚 打赏20.00元 3天前
-
江岚 打赏10.00元 3天前
-
21ic小能手 打赏10.00元 3天前
-
21ic小能手 打赏8.00元 3天前




全部评论(0)