หน้านี้จะอธิบายวิธีรับอิมเมจการบูตที่มีอาร์ติแฟกต์การสร้างเคอร์เนลสำหรับการทดสอบความเข้ากันได้
รับอิมเมจบูท
ใน 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
) อิมเมจบูตเหล่านี้มี RAMdisk ที่สร้างขึ้นจากสาขา AOSPmain
อย่าใช้รูปภาพboot-debug
เนื่องจากมีไว้สำหรับอุปกรณ์ก่อน GKI เท่านั้น - รับอิมเมจบูตที่เซ็นชื่อแล้วซึ่งอิงตาม
android11-5.4
จาก partner.android.com อิมเมจบูตเหล่านี้มี RAMdisk ที่สร้างขึ้นจากสาขาr-fs-release
การรับรองboot.img
เป็นไปตามกระบวนการเดียวกับการรับรอง GSI
ทั้งอิมเมจบูตที่เซ็นชื่อและไม่ได้เซ็นชื่อมีตัวเลือกการบีบอัดเคอร์เนลต่อไปนี้
boot-5.4.img
เป็นเคอร์เนลที่ไม่มีการบีบอัดboot-5.4-gz
เป็นเคอร์เนลที่บีบอัดด้วย Gzipboot-5.4-lz4
เป็นเคอร์เนลที่บีบอัดด้วย lz4
trimmed
)
สําหรับการพัฒนา คุณสามารถใช้เคอร์เนลที่คอมไพล์ไว้ล่วงหน้าและภาพบูต GKI ที่ส่งออกสัญลักษณ์ทั้งหมดในเคอร์เนล (สัญลักษณ์คือ untrimmed
) ระบบจะสร้างเคอร์เนลที่คอมไพล์ไว้ล่วงหน้าแบบไม่ตัดข้อมูลในเป้าหมาย kernel_debug_aarch64
สําหรับบิลด์เคอร์เนลที่เฉพาะเจาะจงใน ci.android.com และสร้างภาพบูต GKI แบบไม่ตัดข้อมูลในบิลด์ userdebug ควบคู่ไปกับภาพบูต GKI แบบตัดข้อมูลปกติ และมีชื่อไฟล์ที่ลงท้ายด้วย -allsyms.img
รับอาร์ติแฟกต์การสร้างเคอร์เนล
เมื่อแก้ไขข้อบกพร่องในไฟล์ GKI boot.img
คุณควรมีอาร์ติแฟกต์การสร้างที่เชื่อมโยงกับเคอร์เนลในไฟล์นั้นด้วย ตัวอย่างเช่น คุณสามารถใช้ vmlinux
ที่ไม่ได้ลบข้อมูลแท็กออกเพื่อแก้ไขข้อบกพร่อง และไฟล์ Manifest เพื่อสร้างบิลด์เคอร์เนล GKI อีกครั้งในเครื่อง วิธีรับอาร์ติแฟกต์สำหรับบิวด์
ค้นหาหมายเลขบิลด์สำหรับเคอร์เนลที่สร้างไว้ล่วงหน้าซึ่งใช้สร้าง GKI
boot.img
หมายเลขบิลด์จะปรากฏที่ส่วนท้ายของเวอร์ชันเคอร์เนล โดยมีตัวอักษรab
นำหน้า ตัวอย่างต่อไปนี้แสดงหมายเลขบิลด์เป็นตัวหนา[ 0.000000] Linux version 5.4.49-00947-g9d21bcd4897b-ab6638796
นอกจากนี้ คุณยังระบุหมายเลขบิลด์ของเคอร์เนลได้โดยใช้
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