在线亚洲黄色-在线亚洲观看-在线亚洲电影-在线亚洲成人-岛国大片在线观看免费版-岛国大片在线播放高清

linux目標文件ELF的格式

導讀目標文件時源代碼編譯后但未進行鏈接的那些中間文件,它跟可執行文件的格式幾乎沒有什么區別,因此目標文件(.o文件)也和可執行文件使用一樣的儲存格式。<;/span>

系統大全為您提供???現在PC上流行的可執行文件格式主要是windows下的PE和linux下的ELF文件,他們都是COFF格式文件變種。目標文件時源代碼編譯后但未進行鏈接的那些中間文件,它跟可執行文件的格式幾乎沒有什么區別,因此目標文件(.o文件)也和可執行文件使用一樣的儲存格式。?在linux中除了可執行文件還有幾種文件也是使用ELF格式儲存的,其中包括動態庫文件(.so),可重定位文件(.o),核心轉儲文件(進程終止時系統將一些進程信息儲存到該類型的文件)。我們可以使用file命令查看文件類型?eg:??123xiang@xiang:~/workspacenux$?file?primprim:?ELF?32-bit?LSB?executable,?Intel?80386,?version?1?(SYSV),?dynamically?linked?(uses?shared?libs),?for?GNU/Linux?2.6.24,?BuildID[sha1]=0xd54ce2ecedb22482c79f597093ff8c0b8f7c7113,?not?strippedxiang@xiang:~/workspacenux$關于ELF文件的格式,其中包含了文件頭(file?header),代碼段(.text),數據段(.data)未初始化數據段(.bss)等,通過objdump?命令可以查看各個段的信息。???123456789101112131415161718192021222324xiang@xiang:~/workspace/algorithm$?g++?-c?prim.cpp?-o?prim.oxiang@xiang:~/workspace/algorithm$?objdump?-h?prim.o?prim.o:?????file?format?elf32-i386?Sections:Idx?Name??????????Size??????VMA???????LMA???????File?off??Algn??0?.text?????????0000031f??00000000??00000000??00000034??2**2??????????????????CONTENTS,?ALLOC,?LOAD,?RELOC,?READONLY,?CODE??1?.data?????????00000000??00000000??00000000??00000354??2**2??????????????????CONTENTS,?ALLOC,?LOAD,?DATA??2?.bss??????????003d3c21??00000000??00000000??00000360??2**5??????????????????ALLOC??3?.rodata???????00000008??00000000??00000000??00000360??2**2??????????????????CONTENTS,?ALLOC,?LOAD,?READONLY,?DATA??4?.ctors????????00000004??00000000??00000000??00000368??2**2??????????????????CONTENTS,?ALLOC,?LOAD,?RELOC,?DATA??5?.comment??????0000002c??00000000??00000000??0000036c??2**0??????????????????CONTENTS,?READONLY??6?.note.GNU-stack?00000000??00000000??00000000??00000398??2**0??????????????????CONTENTS,?READONLY??7?.eh_frame?????000000dc??00000000??00000000??00000398??2**2??????????????????CONTENTS,?ALLOC,?LOAD,?RELOC,?READONLY,?DATAxiang@xiang:~/workspace/algorithm$?objdump?-h?prim1,文件頭(file?header)在文件頭中包含了文件的魔數,機器字長,版本,運行平臺,文件類型,入口地址,短信息等內容,其中魔數用于告訴系統文件的類型,如ELF文件的魔數就是DEL符+ELF,?2,代碼,數據段這些段非常熟悉,需要說明的一點就是.data段包含的是已經初始化的全局變量和靜態變量,而。bss段包含的時未初始化的全局變臉和靜態變量。其中有些文件中還存在。rodata段,存放只讀數據段。另外在.bss段中的變量的默認值為0,因此.bss在elf文件中實際上并不占用空間,只是在裝載的時候需要分配虛擬內存空間。3.段表,段表是elf文件除了文件頭之外最重要的一個數據結構,其中包含了elf的各個段的信息,如每個段的段名,段的長度,在文件中的偏移,讀寫權限等,elf文件中的段結構就是由段表決定的,編譯器,鏈接器裝載器都是通過段表進行訪問各個段的,段表的位置文件頭中e_shoff決定,是在文件中的相對偏移。4,重定位表,鏈接器的作用是鏈接多個目標文件,在一個文件中變量引用或函數引用可能定義在其他的目標文件中,而這些符號引用需要使用絕對地址。對于這些符號引用需要放在一個特定的段中,這個段就是重定位表。代碼段的重定位信息放在.rel.text中,數據段的重定位信息放在.rel.data中。5,字符串表,在ELF文件中有好多字符串,如段名,變量名,因為字符串的長度往往是不確定的,使用固定的結構來表示比較困難,一種常用的方法就是將所有的字符串放在一個單獨的表中,而使用該字符串的地方只需要有個對該字符串的引用就可以了。6,符號表,為了能將不同的目標文件鏈接起來,需要解決不同目標文件之間的相互引用問題。為了解決這個問題,在每個文件中存在很多符號表,其中包括全局符號表,外部符號表,局部符號等。其中全局符號包含定義在本目標文件中的全局符號,這些符號可以被其他的目標文件引用,外部符號包含了在本目標文件中引用,卻未在本目標文件中定義的符號。局部符號,指只有在編譯單元內部可見的符號,在鏈接的過程中沒有實際作用,鏈接器一般會忽略他們。關于符號還涉及函數簽名,強符號,弱符號等問題。???以上就是系統大全給大家介紹的如何使的方法都有一定的了解了吧,好了,如果大家還想了解更多的資訊,那就趕緊點擊系統大全官網吧。??本文來自系統大全http:///如需轉載請注明!推薦:win7純凈版

為你推薦
資訊專欄
熱門視頻
相關推薦
win8系統點擊關機卻只關閉屏幕怎么辦 linux的復制文件命令scp Ubuntu下破解無線網絡 Windows8系統開啟刪除確認對話框的辦法 Linux下配置rdate時間服務器教程 Windows8概念設計草圖出現 Win8的IE瀏覽器如何打開下載項有快捷鍵嗎 Linux系統中獲取路徑的文件名的方法 怎么樣提高Win81安全性 玩轉Win7掃清障礙讓系統順暢運行 如何在linux網卡上添加多個IP 找回Win8系統中的刪除文件確認提示框 Windows8怎么樣執行干凈啟動 Linux搜集的一些故障診斷時常用命令 Win81系統grouppolicyclient服務未能登錄該如何解決 Windows81怎么樣處理彈出自動撥號窗口 如何讓Linux運行在U盤上 win8手勢操作如何設置win8手勢操作設置圖文教 ubuntu更新內核切換內核啟動 Win8系統下如何讓圖片按分辨率規律排序 windows下刪除文件或文件夾被拒需要administrato linux下vim命令詳解 修改Linux默認啟動級別或模式 Windows7系統掛機下載超省電辦法 找回Win8系統平板電腦電源鍵的方法 Linux上使用backupmanager進行系統備份 如何命令行控制Windows演示設置 win8系統如何進行截圖 windows10系統如何開啟Aero毛玻璃效果 linux下查看cpu物理個數核數邏輯cpu數 linux常用命令之目錄處理 禁止用戶自定義win8開始屏幕 windows7實現網絡共享的設置方法 linuxexpect實現自動登錄腳本 Linux環境進程間通信管道及有名管道4 2345看圖王如何添加文字2345看圖王給圖片添加文 win8系統關機快捷鍵是什么 linux普通賬戶綁定1024以下端口 linux下對一個文件設置多個組的權限setfaclgetfac linux打開端口圖
Top 主站蜘蛛池模板: 欧美精品一区二区三区免费 | 91国内精品久久久久免费影院 | 精品不卡 | 日日碰日日摸日日澡视频播放 | 亚洲视频在线看 | 午夜国产大片免费观看 | 免费一级a毛片在线播放视 免费一区二区 | 欧美无极品| 国产91精品久久久久999 | 日韩欧美不卡一区二区三区 | 亚洲色图第1页 | 久久999| 欧美一区不卡二区不卡三区 | 国产欧美日韩在线不卡第一页 | 国产成人黄网址在线视频 | 国产成人一区二区三区影院免费 | 亚洲精品国产第七页在线 | 中文国产成人精品久久96 | 99国内精品久久久久久久 | 国产精品一区二区三区四区 | 国产在线啪 | 岛国一区二区 | 欧美在线综合 | 亚洲欧美中文字幕 | 亚洲一区二区三区四 | 怡红院一区二区三区 | 国产精品美女久久久久网站 | 国产一区二区三区视频 | 国产一区二区三区在线视频 | 国产拍拍拍免费视频网站 | 永久在线毛片免费观看 | 国产一级一级一级成人毛片 | 亚洲精品免费在线观看 | 国产中的精品一区的 | 久久免费视频观看 | 欧美成人禁片在线www | 色就是色欧美色图 | 精品免费在线 | 一区二区三区亚洲 | 91欧美一区二区三区综合在线 | 日韩在线欧美在线 |