本頁介紹如何取得具有核心建置工件的啟動映像以進行相容性測試。
取得啟動鏡像
在 AOSP 中,您可以從ci.android.com取得預先建置的啟動映像。啟動映像包含在aosp_arm64
建置目標的aosp_arm64-img-*.zip
檔案中,如下所示:
- android11-5.4 來自android11-gsi 分支。
- android12-5.4 來自android12-gsi 分支。
簽名和未簽署的啟動映像都具有以下核心壓縮選項:
-
boot-5.4.img
是未壓縮的核心。 -
boot-5.4-gz
是一個 gzip 壓縮內核。 -
boot-5.4-lz4
是一個 lz4 壓縮內核。
出於開發目的,您可以使用核心預先建置和 GKI 啟動映像來匯出核心中的所有符號(符號untrimmed
)。未修剪的核心預先建置是在kernel_debug_aarch64
目標中為ci.android.com上的特定核心建置產生的。未修剪的 GKI 啟動映像會在 userdebug 版本中與正常的修剪 GKI 啟動映像一起生成,並且檔案名稱以-allsyms.img
結尾。
獲取內核建構工件
在偵錯 GKI boot.img
檔案中的問題時,在該檔案中包含與核心關聯的建置工件也很有用。例如,您可以使用未剝離的vmlinux
進行偵錯,並使用清單在本機上重現 GKI 核心建置。要取得建置工件:
尋找用於建立 GKI
boot.img
的預先建置核心的內部版本號。內部版本號出現在核心版本的末尾,前面有字母ab
。以下範例以粗體顯示內部版本號:[ 0.000000] Linux version 5.4.49-00947-g9d21bcd4897b-ab 6638796
您也可以使用
grep
來尋找包含未壓縮核心的啟動映像來確定核心的內部版本號:grep -a "Linux version " boot-5.4.img
使用以下 URL 中的內部版本號碼開啟核心預先建置版本:
https://ci.android.com/builds/submitted/ <number> /kernel_aarch64/latest
例如,使用步驟 1 中的內部版本號,URL 如下:https:
https://ci.android.com/builds/submitted/ 6638796 /kernel_aarch64/latest
使用未修剪的建置時,請將連結中的
kernel_aarch64
替換為kernel_debug_aarch64
。