PE頭

PE頭就是windows中特有的執行檔頭

內容介紹
Windows作業系統家族增加的Windows NT為開發環境和應用程式本身帶來了很大的改變,這之中一個最為重大的當屬PE檔案格式了。
新的PE檔案格式主要來自於UNIX作業系統所通用的COFF 規範,同時為了保證與舊版本MS-DOS及Windows作業系統的兼容,PE檔案格式也保留了MS-DOS中那熟悉的MZ頭部。 在Windows下,程式和庫都是PE(Portable Excutable)格式檔案,可以被記憶體映射到一個進程中。
載入一個Windows可執行程式或者DLL與載入一個動態連結的ELF程式相似,儘管在Windows下動態連結器是作業系統核心的一部分。 PE檔案可以包含有重定位項。通常一個可執行程式不會包含可重定位項,因此必須將它們映射到在連結時確定的地址上。DLL都包含有重定位項,並且在它們被連結進來的地址空間無效的時候都會被重定位(微軟將運行時重定位稱為rebasing)。
所有的PE檔案,包括可執行程式和DLL,都有一個入口點,在DLL被載入、被卸載,以及每一次進程的執行緒attach或deattach這個DLL的時候,載入器都會調用DLL的入口點(每一次載入器都會傳遞一個參數說明調用原因)。
這就可以提供類似ELF的.init和.fini區段的鉤子代碼來實現初始化和終結操作。簡而言之,PE頭就是windows中特有的執行檔頭。

相關詞條

熱門詞條

聯絡我們