基本構成:段
程序通常是由:代碼段,數據段,bss段構成的。 其中數據段存放的是初始化後的前期變量,bss段存放的是沒有初始化的前期變量。
在用於鏈接這個程序的鏈接器腳本中,就會反映出這幾個段的信息。
後綴名爲 .lds
SECTIONS{
. = 0x30000000; //代碼段的起始鏈接地址
. = ALIGN(4); //讓當前地址四字節對齊,提高ARM處理器的訪問內存效率
.text : //代碼段
{
start.o(.text) //代碼段首文件,程序運行時會第一個被運行
*(.text) //*表示所有文件,這行表示所有文件的代碼段
}
.data : //數據段
{
*(.data) //*表示所有文件,這行表示所有文件的數據段
}
. = ALIGN(4); //讓當前地址四字節對齊
bss_start = . ; //定義變量,記錄當前地址,以後程序中可用
.bss : //數據段
{
*(.bss) //*表示所有文件,這行表示所有文件的bss段
}
bss_end = .; //定義變量,記錄當前地址
}