深入理解Linux可執行程序

認識可執行程序

一個源文件在生成可執行程序的過程中地址需要經過以下幾個主要步驟。

源文件在經過編譯器處理之後會生成可重定位目標文件,也就是我們常見的.o文件,經過鏈接器處理之後,會將多個.o文件處理成可執行文件。

  • 可從定位目標

.o 稱為可重定位目標,包含二進制代碼和數據,其形式可以和其他目標進行合並,創建一個可執行目標文件

因為.o文件也是ELF文件的一種,所以我麼可以使用readelf -h 來查看.o文件的elf頭數據

$ readelf -h main.o
ELF 頭:
Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
類別: ELF64
數據: 2 補碼,小端序 (little endian)
Version: 1 (current)
OS/ABI: UNIX - System V
ABI 版本: 0
類型: REL (可重定位文件)
系統架構: Advanced Micro Devices X86-64
版本: 0x1
入口點地址: 0x0
程序頭起點: 0 (bytes into file)
Start of section headers: 960 (bytes into file)
標志: 0x0
Size of this header: 64 (bytes)
Size of program headers: 0 (bytes)
Number of program headers: 0
Size of section headers: 64 (bytes)
Number of section headers: 14
Section header string table index: 13

发表回复

相关推荐

排卵期是月經後的第幾天?到底該怎麼算?今天就告訴你

懷孕,說白瞭也就是:在合適的時間,精子與卵子遇見後,開花結果。那麼,什麼才是合適的時間呢?從女性的角度來說,可以說是...

· 16秒前

【飛盧書單】五本平行世界小說丨全民海島:我在巨龜背上建傢園

全民海島:我在巨龜背上建傢園作者:黑茶茶平行世界資源枯竭,所有人成年後,都可以進入到一個擁有無盡資源的巨大海洋世界之...

· 24秒前

推薦十部國產電影的經典之作,肯定有你沒看過的

十部最經典的電影,為瞭支持國貨,這裡隻說國產的經典電影。國產十部經典電影1、《黃土地》:陳凱歌導演代表作之一,是我國早...

· 50秒前

干吃面大合集

1.统一小当家干脆面48包混合口味 2.老北京方便面(36袋x65克) 3.幸运 方便面 红烧排骨面 干吃面 60g*30袋 整箱装节日 4.统一 ...

· 6分钟前

備孕科普/科學備孕之(男性篇)

接著上一期講完女性篇:科學備孕,這些你做到瞭嗎? 今天我們繼續著重對男性朋友們說如何科學備孕瞭!(一)自我認知每個男性...

· 7分钟前

Copyright 2015-2025 www.icpchaxun.com ©All Rights Reserved.