什麼是連結器(Linker)
將多個目的檔與函式庫結合,進行符號解析與重定位,產生可執行檔或共享函式庫的軟體。
日文名稱: リンカ
「連結器(Linker)」出現在3領域的18道練習題中(連結器與載入器與執行檔格式, 指令集與組合語言, 編譯器等)。
這個名詞所屬的領域: 連結器與載入器與執行檔格式
將多個目的檔與函式庫結合,進行符號解析與重定位,產生可執行檔或共享函式庫的軟體。
日文名稱: リンカ
「連結器(Linker)」出現在3領域的18道練習題中(連結器與載入器與執行檔格式, 指令集與組合語言, 編譯器等)。
這個名詞所屬的領域: 連結器與載入器與執行檔格式
連結器會將各目的檔中所參照的名稱(符號),對應到其他地方所定義的實體(符號解析),並排列各檔案的程式碼與資料以決定最終位址,再將指令中的暫時位址改寫為正確的值(重定位)。
關於連結器的主要功能,下列何者正確?連結器會蒐集所有目的檔的符號表,為每個參照找出一個對應的定義。
關於連結器所進行的符號解析,下列說明何者正確?連結器排列所有檔案、決定實際位址後,會依所記錄的各個位置計算出正確的位址(或與PC的距離)並寫入指令。
關於連結器所進行的重定位(relocation),下列說明何者正確?連結器只會從封存檔中取出定義了尚未找到定義之符號的目的檔,並將其嵌入。
與靜態函式庫(.a檔)一起連結時,連結器會嵌入執行檔的是下列何者?連結器腳本中會寫下快閃記憶體與RAM的起始位址與大小,並指定配置方式,例如.text與常數放在快閃記憶體,.data、.bss與堆疊放在RAM。
關於嵌入式開發中使用的連結器腳本(linker script)的功用,下列何者正確?目的檔(Object file) 重定位(Relocation) 動態連結器(Dynamic linker) 符號解析(Symbol resolution) 符號表(Symbol table) 動態連結(Dynamic linking) 靜態函式庫(Static library) 載入器(Loader) 微控制器 組譯器