您好,登錄后才能下訂單哦!
這篇文章主要講解了“linux的軟件格式是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“linux的軟件格式是什么”吧!
在linux中,軟件的格式是“ELF”;ELF是可執行連接文件格式,主要用于描述文件結構,是Linux、SVR4和“Solaris2.0”默認的目標文件格式;ELF對節的定義和gnu工具鏈對它的支持使它十分靈活,并且支持動態鏈接共享庫。
本文操作環境:linux7.3系統、Dell G3電腦。
Linux 下,程序軟件是沒有擴展名的。
但格式是有的,叫作 ELF。(主要就是描述文件結構,一般人不需要關注它)
ELF(Executable and Linkable Format)即可執行連接文件格式,是一種比較復雜的文件格式,但其應用廣泛。與linux下的其他可執行文件(a.out,cof)相比,它對節的定義和gnu工具鏈對它的支持使它十分靈活,它保存的足夠了系統相關信息使它能支持不同平臺上的交叉編譯和交叉鏈接,可移植性很強.同時它在執行中支持動態鏈接共享庫。
ELF文件簡介
ELF(Executable and Linkable Format)即可執行連接文件格式,是Linux,SVR4和Solaris2.0默認的目標文件格式,目前標準接口委員會TIS已將ELF標準化為一種可移植的目標文件格式,運行于32-bit Intel體系微機上,可與多種操作系統兼容。分析elf文件有助于理解一些重要的系統概念,例如程序的編譯和鏈接,程序的加載和運行等。
(1)ELF文件類型:
種類型的ELF文件:
a)可重定位文件:用戶和其他目標文件一起創建可執行文件或者共享目標文件,例如lib*.a文件。
b)可執行文件:用于生成進程映像,載入內存執行,例如編譯好的可執行文件a.out。
c)共享目標文件:用于和其他共享目標文件或者可重定位文件一起生成elf目標文件或者和執行文件一起創建進程映像,例如lib*.so文件。
(2)ELF文件作用:
ELF文件參與程序的連接(建立一個程序)和程序的執行(運行一個程序),所以可以從不同的角度來看待elf格式的文件:
a)如果用于編譯和鏈接(可重定位文件),則編譯器和鏈接器將把elf文件看作是節頭表描述的節的集合,程序頭表可選。
b)如果用于加載執行(可執行文件),則加載器則將把elf文件看作是程序頭表描述的段的集合,一個段可能包含多個節,節頭表可選。
c)如果是共享文件,則兩者都含有。
感謝各位的閱讀,以上就是“linux的軟件格式是什么”的內容了,經過本文的學習后,相信大家對linux的軟件格式是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。