連結器與載入器與執行檔格式
Linux的dlopen函式(相當於Windows的LoadLibrary)的用途,下列何者最為適切?
- A開啟程式的原始碼進行編輯
- B像外掛程式(plugin)那樣,在執行中載入變得需要的共用函式庫並呼叫函式
- C開啟檔案,讀寫其中的資料
查看答案與解析
正確答案:B. 像外掛程式(plugin)那樣,在執行中載入變得需要的共用函式庫並呼叫函式
在一般的動態連結中,所使用的共用函式庫在啟動時就已決定。使用dlopen的話,可以在執行中指定名稱來載入函式庫,再以dlsym取出函式的位址並呼叫。由於可依設定或使用者的選擇來決定要使用哪個函式庫,常用於外掛程式的機制,以及「有就使用」之選用功能的實作。
- A. 與原始碼的編輯無關。
- B. 正確。不是在啟動時,而是在需要時才載入。
- C. 開啟一般檔案的是fopen或open。