На этой странице описано, как получить загрузочные образы с артефактами сборки ядра для тестирования совместимости.
Получить загрузочные образы
В AOSP вы можете получить готовые загрузочные образы с сайта ci.android.com . Загрузочные образы содержатся в архиве aosp_arm64-img-*.zip
в цели сборки aosp_arm64
следующим образом:
-
android11-5.4
из веткиandroid11-gsi
. -
android12-5.4
из веткиandroid12-gsi
.
- Получите неподписанные загрузочные образы на основе
android12-5.4
из веткиaosp-main
на сайте ci.android.com (посмотрите в цели сборкиaosp_arm64
). Эти загрузочные образы содержат виртуальный диск, созданный на основеmain
ветки AOSP. Не используйте образыboot-debug
; они предназначены только для устройств до GKI. - Получите подписанные загрузочные образы на основе
android11-5.4
с сайта Partner.android.com . Эти загрузочные образы содержат виртуальный диск, созданный на основе веткиr-fs-release
. Подписаниеboot.img
происходит по тому же процессу, что и подписание GSI.
Как подписанные, так и неподписанные загрузочные образы имеют следующие параметры сжатия ядра:
-
boot-5.4.img
— это несжатое ядро. -
boot-5.4-gz
— это ядро, сжатое gzip. -
boot-5.4-lz4
— это ядро, сжатое lz4.
trimmed
). В целях разработки вы можете использовать готовые сборки ядра и загрузочные образы GKI, которые экспортируют все символы в ядре (символы не untrimmed
). Необрезанные предварительные сборки ядра генерируются в целевом объекте kernel_debug_aarch64
для конкретной сборки ядра на ci.android.com . Необрезанные загрузочные образы GKI генерируются в сборках userdebug вместе с обычными обрезанными загрузочными образами GKI и имеют имена файлов, заканчивающиеся на -allsyms.img
.
Получить артефакты сборки ядра
При отладке проблем в файле boot.img
GKI полезно также иметь в этом файле артефакты сборки, связанные с ядром. Например, вы можете использовать необработанный 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://ci.android.com/builds/submitted/ 6638796 /kernel_aarch64/latest
При использовании необрезанной сборки замените
kernel_aarch64
в ссылке наkernel_debug_aarch64
.