老古开发网首页
导航:老古开发网首页文章索引索引第1560页文章分类AVR单片机第44页→[ARM基础知识连载之十(转贴)]
| -文章搜索 - 最新文章 - |

第1470篇:ARM基础知识连载之十(转贴)

发布时间:2006年4月23日 点击次数:4613
来源:   作者:
 

*****************************************************

ARM映像文件——2

*****************************************************

3输入段的排序规则
连接器根据输入段的属性来组织这些输入段,具有相同属性的输入段被放到域中一段连续的空间中,组成一个输出段。在一个输出段中,各输入段的起始地址与

输出段的起始地址和该输出段中个输入段的排列顺序有关。
通常情况下,一个输出段中个输入段的排列顺序由下面几个因素决定的。用户可以通过连接选项-first和-last来改变这些规则。
**输入段的属性。
**输入段的名称
**各输入段在连接命令行的输入段列表中的排列顺序
按照输入段的属性,其排列顺序如下所示:
**只读的代码段
**只读的数据段
**可读写的代码段
**其他已经初始化的数据段
**未出世化的数据
对于具有相同属性的输入段,按照其名称来排序。这是输入段名称是区分大小写的,按照其ASCII码顺序进行排序。
对于具有相同属性和名城的输入段,按照其在输入段列表中的顺序进行排序。也就是说,几十个输入段的属性和名称保持不变,如果其在编译时,各输入段在输

入段列表中的排列顺序不同,生成的映像文件也将不同。
可以通过连接选项-first和-last来改变这些规则。如果连接时使用了配置文件,可以在配置文件中通过伪属性FIRST和LAST达到相同的效果。
连接选项-first和-last不能改变根据输入段进行排序的规则,它只能改变根据输入段名称和其在输入列表中的顺序的排序规则。也就是说,如果使用-first指定

一个输入段,只有该输入段所在的输出段位于运行时域的开始位置时,该输入段才能位于整个运行时域的开始位置。
各个输入段排好顺序后,在确定各个输入段的起始地址之前,何以通过填充补丁是个输入段满足地址对齐的要求。


欢迎进入老古论坛进行讨论
[AVR单片机] 相关文章:
ARM基础知识连载之八(转贴)
简介:
***************************************************** ARM编译器中预定义的宏 ***************************************************** ARM编译器预定义了一些宏,这些预定义宏对应一定的数值,有些预定义宏没有对应数值,见下表: _arm &nb......

ARM基础知识连载之七(转贴)
ARM基础知识连载之六(转贴)
ARM基础知识连载之五(转贴)
ARM基础知识连载之四(转贴)
 
下一个:[AVR单片机]ARM基础知识连载之九(转贴)
简介:
***************************************************** ARM映像文件 ***************************************************** 1.ELF格式文件的结构 1.1映像文件组成部分 **一个映像文件有一个或多个域组成 **每个域包含一个或多个输出段 **每个输出段包含一个或多个输入段 **各输入段中包含了目标文件中的代码和数据 输入段中包含了四类内......

上一个:[AVR单片机]FLASH地址线接线原理及设置小结

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:30分钟 执行时间:31毫秒