# ELF ## what is ELF[reference](https://stevens.netmeister.org/631/) 有4種 1. executable file : a.out 2. object file : hello.o 3. shared library(不會提到) 4. core dump(不會提到) 在程式編譯的過程中: 先確定high level language 沒有錯誤後,會優化並轉成符合不同架構的assembly code, 而這就是.o檔,要在經過linker後,將裡面需要的各種object file連起來(像在call c library) 最後在由loader將我們的program 複製到主記憶體裡,這裡面可能有dynamic linking