Questa pagina descrive come ottenere immagini di avvio con gli elementi di compilazione del kernel per i test di compatibilità.
Ottenere immagini di avvio
In AOSP, puoi ottenere immagini di avvio precompilate da
ci.android.com.
Le immagini di avvio sono contenute nell'archivio aosp_arm64-img-*.zip
nel
aosp_arm64
target di compilazione, come segue:
android11-5.4
dal ramoandroid11-gsi
.android12-5.4
dal ramoandroid12-gsi
.
- Ottieni immagini di avvio non firmate basate su
android12-5.4
dal ramoaosp-main
su ci.android.com (cerca nel target di compilazioneaosp_arm64
). Queste immagini di avvio contengono un ramdisk costruito dal ramomain
di AOSP. Non utilizzare le immaginiboot-debug
, poiché sono destinate solo ai dispositivi precedenti a GKI. - Ottieni immagini di avvio firmate basate su
android11-5.4
da partner.android.com. Queste immagini di avvio contengono un ramdisk creato dal ramor-fs-release
. La firmaboot.img
segue la stessa procedura della firma GSI.
Le immagini di avvio firmate e non firmate sono disponibili nelle seguenti opzioni di compressione del kernel:
boot-5.4.img
è un kernel non compresso.boot-5.4-gz
è un kernel compresso con gzip.boot-5.4-lz4
è un kernel compresso con lz4.
trimmed
).
Per scopi di sviluppo, puoi utilizzare precompilati del kernel e immagini di avvio GKI che esportano tutti i simboli nel kernel (i simboli sono untrimmed
). I precompilati del kernel non tagliati vengono generati nel target kernel_debug_aarch64
per una determinata build del kernel su ci.android.com.
Le immagini di avvio GKI non tagliate vengono generate nelle build userdebug insieme alle normali
immagini di avvio GKI tagliate e hanno nomi file che terminano con -allsyms.img
.
Ottenere gli artefatti della build del kernel
Quando esegui il debug dei problemi in un file GKI boot.img
, è utile avere anche gli elementi di compilazione associati al kernel in quel file. Ad esempio, puoi
utilizzare il file vmlinux
non stripped per il debug e il manifest per riprodurre la compilazione del kernel GKI localmente. Per ottenere gli elementi della build:
Individua il numero di build del kernel precompilato utilizzato per creare il GKI
boot.img
. Il numero di build viene visualizzato alla fine della versione del kernel, precededo dalle lettereab
. L'esempio seguente mostra il numero di build in grassetto:[ 0.000000] Linux version 5.4.49-00947-g9d21bcd4897b-ab6638796
Puoi anche determinare il numero di build del kernel utilizzando
grep
per trovare un'immagine di avvio contenente un kernel non compresso:grep -a "Linux version " boot-5.4.img
Apri la build precompilata del kernel utilizzando il numero di build nel seguente URL:
https://ci.android.com/builds/submitted/<number>/kernel_aarch64/latest
Ad esempio, utilizzando il numero di build del passaggio 1, l'URL è il seguente:
https://ci.android.com/builds/submitted/6638796/kernel_aarch64/latest
Quando utilizzi una build non ritagliata, sostituisci
kernel_aarch64
nel link conkernel_debug_aarch64
.