1.1 Realview MDK链接程序的两种方式
使用RealviewMDK时不可避免的要涉及到链接脚本文件,特别是编译链接那些大的工程文件时更是如此。在链接脚本中可以指定代码的存储布局,可以将代码段、只读数据段、可读写的数据段分别存放,甚至可以精确地指定代码放置的位置,这一点是很关键的,譬如说启动代码就必须放在可执行文件的开始位置。由于链接脚本重要性,开发者必须掌握其编写的方法。
Realview MDK链接程序使用了两种方式控制程序的链接:
1.1.1 链接控制命令选项
当使用链接控制命令选项时,链接器定义了12个段地址描述符, 这12个描述符可以直接在程序中引用.
Image$$ 执行区符号符号说明
Image$$region_name$$Base 区的执行地址。
Image$$region_name$$Length 执行区长度(以字节为单位),不包括 ZI 长度。
Image$$region_name$$Limit 执行区中非 ZI 部分末尾后面的字节的地址。
Image$$region_name$$RO$$Base 此区中的 RO 输出节的执行地址。
Image$$region_name$$RO$$Length RO输出节的长度(以字节为单位)。
Image$$region_name$$RO$$Limit 执行区中 RO 输出节末尾后面的字节的地址。
Image$$region_name$$RW$$Base 此区中的 RW 输出节的执行地址。
Image$$region_name$$RW$$Length RW 输出节的长度(以字节为单位)。
Image$$region_name$$RW$$Limit 执行区中 RW 输出节末尾后面的字节的地址。
Image$$region_name$$ZI$$Base 此区中的 ZI 输出节的执行地址。
Image$$region_name$$ZI$$Length ZI 输出节的长度(以字节为单位)。
Image$$region_name$$ZI$$Limit 执行区中 ZI 输出节末尾后面的字节的地址。
它的RW长度计算:Length = (Image$$RW$$Limit-Image$$RW$$Base)
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0206ic/Chdcgbjd.html