1-1-4 连接器脚本

1.  程序由 段(SECTIONS)和堆栈(STACK)组成,而段(SECTIONS)包括四个部分,分别为:代码段(.text)、数据段(.data)以及bss段(.bss)ide

  1.1  代码段(.text):存放要执行的程序指令内存

  1.2  数据段(.data):存放已初始化的全局变量it

  1.3  bss段(.bss)  :存放未初始化的全局变量table

  1.4  栈  :存放局部变量class

  1.5  堆  :存放malloc申请的空间变量


2.  设置起始地址  . = 0x30008000  /* 2440内存中的起始执行地址为0x30000000 */程序

                                  /* 但有32k用来保存TTB,真实执行起始地址未0x30008000 */
数据

3.  对齐设置        . = ALIGN(4)  /* 2440为32bit,要对.text, .data, .bss设置四字节对齐 */脚本

4.  使用变量  bss_start = .       /* 用来设置当前地址存放在一个变量中 */tab

              bss_end = .


/* 如下为连接器脚本范例代码,<tab>为table键 */

SECTIONS
{
<tab>. = 0x30008000
<tab>. = ALIGN(4);
<tab>.text :
<tab>{
<tab>start.o(.text)
<tab>*(.text)
<tab>}
<tab>. = ALIGN(4);
<tab>.data :
<tab>{
<tab>*(.data)
<tab>}
<tab>. = ALIGN(4);
<tab>.bss_start = .;
<tab>.bss :
<tab>{
<tab>*(.bss)
<tab>}
<tab>bss_end = .;
}
相关文章
相关标签/搜索