架構
AppImage 採用非常簡單的架構,本節將加以說明。
概覽
AppImage 由兩個部分組成:執行階段 與 檔案系統映像。目前第 2 類所使用的檔案系統是 SquashFS。
AppImage 檔案結構。版權所有 © @TheAssassin 2019。採用 CC-By-SA Intl 4.0 授權。
當 AppImage 被執行時,作業系統會把它當作可執行檔來執行。執行階段(可執行部分)會使用 FUSE 掛載檔案系統映像。若成功,AppDir 會出現在 暫時掛載點,並可像唯讀目錄一樣使用。
接著執行階段會透過作業系統的機制呼叫 AppDir 的「入口點」:ref:AppRun <ref-apprun>。執行階段不會做任何檢查,作業系統僅負責執行 <AppDir 掛載點>/AppRun。這帶來高度彈性,因為 AppRun 可以是任意可執行檔、含有 shebang 的腳本,甚至只是指向 AppDir 內另一個可執行檔的符號連結。該檔案必須可執行。
AppDir 的內容完全由使用者指定,儘管有工具可協助打包。更多資訊請參閱 打包指南。