執行檔
可執行文件是一種特定格式的文件,可以由計算機的操作系統直接加載並執行。可執行文件通常包含了程序的機器語言(編譯後的二進制代碼), 還有一些用於系統加載和運行的元數據。
「執行檔」的各地常用名稱 | |
---|---|
中國大陸 | 可執行文件 |
臺灣 | 執行檔 |
兼容性限制
編輯可執行文件的內容和結構包含機器指令和系統調用,與操作系統和硬件架構密切相關。例如: Windows上的 .exe 文件包含Windows系統特有的結構和指令,Linux不直接支持這些文件格式和指令集。
CPU架構與指令集同樣會影響可執行文件的兼容性, 常見的CPU架構有x86、x86-64、ARM等,可能需要根據不同的CPU架構分別編譯不同的可執行文件。
為了讓Windows可執行文件在Linux上運行,可以使用 Wine: Wine是一個開源的兼容層,提供了Windows API的實現,允許部分Windows程序在Linux或MacOS系統上運行。[1]
常見的可執行文件後綴名
編輯不同操作系統有不同的可執行文件後綴,如:
PE(Portable Executable)格式用於Windows系統:
ELF(Executable and Linkable Format)是Linux和Unix系統中的標準:[3][4]
- .run:用於安裝程序或自解壓安裝包的文件。
- .bin:一般用於可執行的二進制文件或獨立發行版中的可執行文件。
Mach-O(Mach Object)格式用於macOS系統:[5]
- .app:包含可執行文件、資源和元數據,以文件夾形式出現,但實際是一個打包格式。
腳本文件
編輯腳本文件通常使用腳本語言編寫, 不經過編譯處理,文件中保存的仍然是原始代碼,通常是可讀的ASCII文本。而傳統的可執行文件通常是編譯後的二進制文件, 這些文件已經過編譯器的處理,將源代碼轉化成機器代碼,直接由計算機的CPU執行。腳本文件執行時由解釋器逐行讀取並"翻譯"給計算機執行。
參看
編輯- ^ WineHQ - Run Windows applications on Linux, BSD, Solaris and macOS. WineHQ. [2024-11-13]. (原始內容存檔於2024-11-13) (英語).
- ^ Karl-Bridge-Microsoft. PE Format - Win32 apps. learn.microsoft.com. 2024-02-29 [2024-11-13] (美國英語).
- ^ Linux Foundation - Decentralized innovation, built with trust. www.linuxfoundation.org. [2024-11-13] (英語).
- ^ Linux Foundation Referenced Specifications. refspecs.linuxfoundation.org. [2024-11-14].
- ^ Overview of the Mach-O Executable Format. developer.apple.com. [2024-11-13]. (原始內容存檔於2024-07-23) (英語).