我想寫ELF可執行文件加載程序ARM platform.I有一些疑問這裏如何動態加載可重定位的ELF可執行文件?
1)如何產生重定位或與位置無關的ELF可執行文件(什麼是編譯器&連接選項)2)如何上面加載此生成ELF可執行文件。
作爲astart,我做了一些工作,它工作正常。我爲RO_Base使用了一個固定地址,並且在構建時不使用任何--split選項來拆分Segments,所以我得到了一個連續的代碼,數據,bss部分。在此之後,我將精靈加載到與RO_Base相同的地址並將代碼作爲新線程執行。這工作正常。我沒有做任何重定位等...
現在我想通過生成可重定位的ELF並修改加載器進行適當的更改來使其動態並能夠加載到任何地址。 請幫助我使它工作。
謝謝,