連結器與載入器與執行檔格式
主要作業系統所使用的執行檔格式組合,下列何者正確?
- ALinux為PE,Windows為Mach-O,macOS為ELF
- BLinux為ELF,Windows為PE,macOS為Mach-O
- C所有作業系統都使用ELF
查看答案與解析
正確答案:B. Linux為ELF,Windows為PE,macOS為Mach-O
執行檔的格式依作業系統而定。Linux、BSD以及許多嵌入式裝置使用ELF,Windows使用.exe或.dll的PE(Portable Executable),macOS與iOS使用Mach-O。其內部的概念(程式碼與資料的區域、符號、重定位、動態連結的資訊)相似,但由於格式不同,即使是針對相同的CPU,作業系統不同,執行檔也無法直接運作。
- A. 組合被調換了。
- B. 正確。格式依作業系統而異。
- C. Windows與macOS是不同的格式。