連結器與載入器與執行檔格式

關於嵌入式開發中使用的連結器腳本(linker script)的功用,下列何者正確?

  1. A指示連結器要將各區段配置在快閃記憶體或RAM等的哪個位址
  2. B撰寫自動執行程式測試的步驟
  3. C規定原始碼的寫法規則,並通知違規之處
查看答案與解析

正確答案:A. 指示連結器要將各區段配置在快閃記憶體或RAM等的哪個位址

在個人電腦的作業系統中,位址是由載入器決定的,但在微控制器上,通電那一刻的位址就是直接使用的位址。連結器腳本中會寫下快閃記憶體與RAM的起始位址與大小,並指定配置方式,例如.text與常數放在快閃記憶體,.data、.bss與堆疊放在RAM。像中斷向量這類必須放在固定位址的東西,也在此指定。

  • A. 正確。可精細地決定記憶體的配置。
  • B. 與測試自動化是不同的機制。
  • C. 那是靜態分析工具等的功用。
練習這個領域 前往領域頁面

連結器與載入器與執行檔格式的其他題目

  1. 在沒有作業系統的微控制器上,通電後啟動程式碼在呼叫main之前所進行的處理,下列何者正確?
  2. 關於ELF檔案中的「區段(section)」與「段(segment)」的差異,下列何者正確?
  3. 藉由不讓記憶體分頁同時具備「可寫入」與「可執行」(W^X,寫入與執行分離),較容易防禦的攻擊為下列何者?
  4. 在Linux的共用函式庫中,將libfoo.so.1的「.1」這類soname的版本號碼調高,一般是在什麼時候?
  5. 在Linux上對執行檔使用ldd指令,可得知下列何者?

這個領域的比較