เคอร์เนลทั่วไปของ AOSP (หรือที่เรียกว่าเคอร์เนลทั่วไปของ Android หรือ ACK) เป็นเคอร์เนลดาวน์สตรีมของ kernel.org และมีแพตช์ที่ชุมชน Android สนใจซึ่งยังไม่ได้ผสานรวมเข้ากับเคอร์เนลหลักหรือเคอร์เนลที่รองรับระยะยาว (LTS) ซึ่งอาจรวมถึงรายการต่อไปนี้
- การพอร์ตย้อนหลังและการเลือกฟังก์ชันการทำงานจาก upstream ที่จำเป็นสำหรับฟีเจอร์ของ Android
- ฟีเจอร์พร้อมใช้งานสำหรับอุปกรณ์ Android แต่อยู่ระหว่างการพัฒนาในเวอร์ชันสำหรับนักพัฒนาซอฟต์แวร์
- ฟีเจอร์ของผู้ให้บริการ/OEM ที่เป็นประโยชน์สำหรับพาร์ทเนอร์ระบบนิเวศรายอื่นๆ
android-mainline
เป็นสาขาการพัฒนาหลักสำหรับฟีเจอร์ Android ระบบจะผสานรวมเมน Linux เข้ากับ android-mainline
เมื่อใดก็ตามที่ Linus Torvalds โพสต์รุ่นที่เผยแพร่หรือรุ่นที่อาจได้รับการเผยแพร่ ก่อนปี 2019 เคอร์เนลทั่วไปของ Android จะสร้างขึ้นโดยการโคลนเคอร์เนล LTS ที่ประกาศล่าสุดและเพิ่มแพตช์เฉพาะ Android กระบวนการนี้เปลี่ยนแปลงไปในปี 2019 เพื่อแยกเคอร์เนล Android ทั่วไปเวอร์ชันใหม่จาก android-mainline
รูปแบบใหม่นี้ช่วยหลีกเลี่ยงความพยายามอย่างมากในการส่งต่อพอร์ตและทดสอบแพตช์ Android โดยให้ผลลัพธ์เดียวกัน android-mainline
ได้รับการทดสอบอย่างต่อเนื่องอย่างสม่ำเสมอ ซึ่งช่วยให้มั่นใจได้ว่าเคอร์เนลจะมีคุณภาพสูงตั้งแต่วันแรกที่เผยแพร่
เมื่อมีการประกาศ LTS ใหม่ เคอร์เนลทั่วไปที่เกี่ยวข้องจะแยกออกจาก android-mainline
ซึ่งจะช่วยให้พาร์ทเนอร์เริ่มโปรเจ็กต์ได้ก่อนที่จะมีการประกาศเวอร์ชัน LTS โดยการผสานจาก android-mainline
หลังจากสร้างสาขาเคอร์เนลทั่วไปใหม่แล้ว พาร์ทเนอร์จะเปลี่ยนแหล่งที่มาของการผสานเป็นสาขาใหม่ได้อย่างราบรื่น
ส่วนสาขาเคอร์เนลทั่วไปอื่นๆ จะได้รับการผสานเป็นประจำจากเคอร์เนล LTS ที่เกี่ยวข้อง
โดยปกติการผสานเหล่านี้จะดำเนินการทันทีหลังจากที่มีการโพสต์รุ่น LTS ตัวอย่างเช่น เมื่อมีการเผยแพร่ Linux 6.1.75 ระบบจะผสานเข้ากับเคอร์เนลทั่วไป 6.1 (android14-6.1
) เราขอแนะนำให้พาร์ทเนอร์อัปเดตเคอร์เนลเพื่อให้เป็นเวอร์ชันล่าสุดอยู่เสมอ ซึ่งรวมถึงการแก้ไขข้อบกพร่องสำหรับ LTS และ Android โดยเฉพาะ
ACK สาขาเคอร์เนล KMI
เคอร์เนล GKI มีอินเทอร์เฟซของโมดูล Kernel ที่เสถียร KMI จะระบุเวอร์ชันเคอร์เนลและรุ่นแพลตฟอร์ม Android ที่ไม่ซ้ำกัน ดังนั้นสาขาจึงมีชื่อว่า ANDROID_RELEASE
-KERNEL_VERSION
ตัวอย่างเช่น เคอร์เนล GKI เวอร์ชัน 6.1 สำหรับ Android 14 มีชื่อว่า android14-6.1
สำหรับ Android 15 เราได้เปิดตัวเคอร์เนล GKI android15-6.6
ฟีเจอร์และเคอร์เนลการเปิดตัว
ก่อน Android 15 คุณสามารถใช้เคอร์เนล 3 รายการล่าสุดในการเปิดตัวอุปกรณ์ได้ ตั้งแต่ Android 15 เป็นต้นไป คุณจะใช้เคอร์เนล 2 เวอร์ชันล่าสุดเพื่อเปิดตัวอุปกรณ์ได้ เคอร์เนลที่ใช้งานจริงสำหรับ Android 15 คือ android15-6.6
และ android14-6.1
เนื่องจากไม่จําเป็นต้องอัปเกรดเคอร์เนลเมื่ออัปเดตรุ่นแพลตฟอร์ม คุณจึงยังใช้เคอร์เนลที่ไม่มีฟีเจอร์ล่าสุดของรุ่นแพลตฟอร์มเพื่อเปิดใช้งานอุปกรณ์ได้ ดังนั้นเคอร์เนลที่ออกแบบมาสำหรับ Android 14 เช่น android14-6.1
จึงใช้งานบนอุปกรณ์ได้ แม้ว่าจะอัปเกรดรุ่นแพลตฟอร์มเป็น Android 15 แล้วก็ตาม
แพลตฟอร์ม Android | เปิดเคอร์เนล | เคอร์เนลฟีเจอร์ |
---|---|---|
Android 15 (2024) |
android15-6.6
android14-6.1
|
android15-6.6
|
Android 14 (2023) |
android14-6.1
android14-5.15
android13-5.15
android13-5.10
android12-5.10
|
android14-6.1
android14-5.15
|
Android 13 (2022) |
android13-5.15
android13-5.10
android12-5.10
android12-5.4
android11-5.4
|
android13-5.15
android13-5.10
|
Android 12 (2021) |
android12-5.10
android12-5.4
android11-5.4
android-4.19-stable
|
android12-5.10
android12-5.4
|
Android 11 (2020) |
android11-5.4
android-4.19-stable
|
android11-5.4
android-4.19-stable
|
1 อาจมีข้อจำกัดเพิ่มเติมหาก BSP ที่เชื่อมโยงได้รับการอัปเดตสำหรับรุ่นแพลตฟอร์ม กล่าวอย่างกว้างๆ ก็คือ หมายเลขรุ่น Android ของเคิร์กัลต้องสูงกว่าหรือเท่ากับเวอร์ชัน FCM เป้าหมาย ดูรายละเอียดได้ที่หัวข้อออบเจ็กต์อินเทอร์เฟซของผู้ให้บริการ - จับคู่สาขาเคอร์เนล |
ลำดับชั้นเคอร์เนลทั่วไป
สาขาจาก Android-mainline
ระดับบนสุดของลำดับชั้นของเคอร์เนลทั่วไปจะแสดงในรูปที่ 1
รูปที่ 1 การสร้างเคอร์เนลทั่วไปจากเคอร์เนล android-mainline
โปรดสังเกตว่าเคอร์เนลทั่วไปใหม่ของ Android android14-6.1
ได้แยกออกมาจาก android-mainline
ในปี 2022 ในปี 2023 เมื่อมีการประกาศ LTS ถัดไป android15-6.6
ได้แยกออกมาจาก android-mainline
ดังที่แสดงในรูปที่ 1 แต่ละเวอร์ชันของเคิร์กัลสามารถใช้เป็นพื้นฐานของเคิร์กัล GKI ได้ 2 เวอร์ชัน
ตัวอย่างเช่น เคอร์เนล v5.15 2 รายการคือ android13-5.15
และ android14-5.15
ซึ่งทั้ง 2 รายการเป็นเคอร์เนลฟีเจอร์สำหรับรุ่นแพลตฟอร์มที่เกี่ยวข้อง กรณีนี้เกิดขึ้นกับ 5.10 ด้วยเช่นกัน android12-5.10
สร้างขึ้นเมื่อมีการประกาศ LTS และ android13-5.10
แยกมาจาก android12-5.10
เมื่อถึงเหตุการณ์สำคัญที่มีฟีเจอร์เคอร์เนลครบถ้วนในฤดูใบไม้ผลิปี 2021 เพื่ออนุญาตให้พัฒนาฟีเจอร์สำหรับ Android 13 ตั้งแต่ Android 15 (2024) เป็นต้นไป เคอร์เนล GKI ใหม่มีเพียง 1 รายการต่อเคอร์เนลเท่านั้น (ไม่มีเคอร์เนล android15-6.1
)
วงจรของสาขา ACK KMI
วงจรชีวิตของสาขา ACK KMI แสดงอยู่ในรูปที่ 2 ด้านล่าง
รูปที่ 2 6.6 วงจรของสาขา ACK KMI
รูปที่ 2 จะเน้นไปที่สาขา ACK KMI สำหรับ 6.6 เพื่อชี้แจงกระบวนการพัฒนาและวงจรของสาขา
สาขา ACK KMI แต่ละสาขาจะวนผ่าน 3 ระยะที่ระบุไว้ในรูปที่ 2 โดยแต่ละสาขาจะมีสีแตกต่างกัน ดังที่แสดง ระบบจะผสาน LTS เป็นระยะๆ โดยไม่คำนึงถึงระยะ
ระยะการพัฒนา
เมื่อสร้างแล้ว สาขา ACK KMI จะเข้าสู่ระยะการพัฒนา (ติดป้ายกำกับเป็น dev ในรูปที่ 2) และพร้อมรับการมีส่วนร่วมในฟีเจอร์สำหรับรุ่นแพลตฟอร์ม Android รุ่นถัดไป ในรูปที่ 2 android15-6.6
สร้างขึ้นเมื่อมีการประกาศ 6.6 เป็นเคอร์เนล LTS ใหม่ใน upstream
ระยะคงที่
เมื่อสาขา KMI ของ ACK ประกาศว่าฟีเจอร์เสร็จสมบูรณ์แล้ว สาขาดังกล่าวจะเข้าสู่ระยะการทำให้เสถียร (มีป้ายกำกับว่าเสถียรในรูปที่ 2) ระบบยังคงยอมรับฟีเจอร์ของพาร์ทเนอร์และการแก้ไขข้อบกพร่อง แต่การติดตาม KMI เปิดใช้เพื่อตรวจหาการเปลี่ยนแปลงที่ส่งผลกระทบต่ออินเทอร์เฟซ ในระยะนี้ ระบบจะยอมรับการเปลี่ยนแปลงที่ส่งผลกับ KMI และอัปเดตคำจำกัดความของ KMI ตามช่วงเวลาที่กำหนดไว้ล่วงหน้า (ปกติทุก 2 สัปดาห์) ดูรายละเอียดการตรวจสอบ KMI ได้ในภาพรวม GKI
ระยะที่ KMI หยุดทำงาน
ก่อนที่จะมีการพุชแพลตฟอร์มเวอร์ชันใหม่ไปยัง AOSP ระบบจะหยุดสาขา ACK KMI ไว้และจะหยุดไว้ตลอดอายุของสาขา ซึ่งหมายความว่าเราจะไม่ยอมรับการเปลี่ยนแปลงที่ส่งผลต่อ KMI เว้นแต่จะมีการระบุปัญหาด้านความปลอดภัยร้ายแรงที่ไม่สามารถบรรเทาได้โดยไม่ส่งผลกระทบต่อ KMI ที่เสถียร เพื่อหลีกเลี่ยงการหยุดทำงานของ KMI ระบบอาจแก้ไขหรือยกเลิกการรวมแพตช์บางรายการที่ผสานมาจาก LTS หากการแก้ไขไม่จำเป็นสำหรับอุปกรณ์ Android
เมื่อสาขา KMI ของ ACK ถูกหยุดไว้ชั่วคราว ระบบจะยอมรับการแก้ไขข้อบกพร่องและฟีเจอร์ของพาร์ทเนอร์ ตราบใดที่เคอร์เนลทั่วไปของ KMI ที่มีอยู่ไม่เสียหาย KMI สามารถขยายได้ด้วยสัญลักษณ์ใหม่ที่ส่งออก ตราบใดที่อินเทอร์เฟซที่ประกอบกันเป็น KMI ปัจจุบันไม่ได้รับผลกระทบ เมื่อเพิ่มอินเทอร์เฟซใหม่ลงใน KMI อินเทอร์เฟซเหล่านั้นจะเสถียรทันทีและจะไม่ได้รับผลกระทบจากการเปลี่ยนแปลงในอนาคต
ตัวอย่างเช่น ระบบไม่อนุญาตให้ทำการเปลี่ยนแปลงที่เพิ่มช่องลงในโครงสร้างที่ใช้โดยอินเทอร์เฟซ KMI ของเคอร์เนลทั่วไป เนื่องจากการเปลี่ยนแปลงดังกล่าวจะเปลี่ยนคำจำกัดความของอินเทอร์เฟซ
struct foo {
int original_field1;
int original_field2;
int new_field; // Not allowed
};
int do_foo(struct foo &myarg)
{
do_stuff(myarg);
}
EXPORT_SYMBOL_GPL(do_foo);
แต่การเพิ่มฟังก์ชันใหม่นั้นทำได้
struct foo2 {
struct foo orig_foo;
int new_field;
};
int do_foo2(struct foo2 &myarg)
{
do_stuff2(myarg);
}
EXPORT_SYMBOL_GPL(do_foo2);
ตลอดอายุการใช้งานของเคิร์ก GKI ระบบจะรักษาความเข้ากันได้แบบย้อนหลังกับพื้นที่ผู้ใช้เพื่อให้ใช้เคอร์กกับแพลตฟอร์ม Android เวอร์ชันที่เปิดตัวอุปกรณ์ได้อย่างปลอดภัย การทดสอบอย่างต่อเนื่องกับรุ่นก่อนหน้าช่วยให้มั่นใจได้ว่า
ความเข้ากันได้จะยังคงเหมือนเดิม ดังนั้นในรูปที่ 2 เคอร์เนล android15-6.6
ใช้ในอุปกรณ์ Android 15 ขึ้นไปได้ เนื่องจากแพลตฟอร์ม Android เวอร์ชันนี้ใช้ร่วมกับเวอร์ชันก่อนหน้าได้ จึงสามารถใช้เคอร์เนล android14-6.1
สำหรับอุปกรณ์ Android 15 ในการเปิดตัวหรืออัปเกรด
หมายเลขรุ่น KMI
หากมีการผสาน LTS ในระยะการทำให้เสถียร หรือมีปัญหาด้านความปลอดภัย หรือเหตุการณ์อื่นๆ หลังจากนี้ซึ่งกำหนดให้ต้องยอมรับการแพตช์ที่เปลี่ยนแปลง KMI ระบบจะเพิ่มหมายเลขรุ่น KMI ที่บันทึกไว้ใน build.config.common
คุณดูรุ่น KMI ปัจจุบันได้โดยใช้คําสั่ง uname
ดังนี้
$ uname -r
6.6.30-android15-6-g86d10b30f51f
ตัวเลขหลังรุ่นแพลตฟอร์มคือรุ่น KMI (ในกรณีนี้คือ 6
)
หากการสร้าง KMI มีการเปลี่ยนแปลง เคอร์เนลจะใช้ไม่ได้กับโมดูลผู้ให้บริการที่สอดคล้องกับการสร้าง KMI ก่อนหน้า ดังนั้นจึงต้องสร้างโมดูลใหม่และอัปเดตแบบพร้อมกันด้วยเคอร์เนล หลังจากการหยุด KMI แล้ว การเปลี่ยนแปลงการสร้าง KMI คาดว่าจะเกิดขึ้นน้อยมาก
ความเข้ากันได้ระหว่างเคอร์เนล
ข้อกำหนดความเข้ากันได้ระหว่างเคอร์เนลในตระกูล LTS เดียวกันมีการเปลี่ยนแปลงโดยเริ่มจากเคอร์เนล GKI ใหม่
เคอร์เนล GKI
เคอร์เนล GKI จะยังคงใช้งานร่วมกับแพลตฟอร์ม Android ทุกรุ่นที่รองรับเวอร์ชันเคอร์เนลได้ นอกจากนี้ แพลตฟอร์ม Android เวอร์ชันต่างๆ ยังใช้งานร่วมกับเคอร์เนล GKI จากเวอร์ชันก่อนหน้าได้ คุณจึงใช้เคอร์เนล android14-6.1
ที่พัฒนาขึ้นสำหรับ Android 14 (2023) ในอุปกรณ์ที่ใช้ Android 15 (2024) ได้อย่างปลอดภัย ความเข้ากันได้ได้รับการยืนยันผ่านการทดสอบ VTS และ CTS อย่างต่อเนื่องของเคอร์เนล GKI กับรุ่นที่รองรับทั้งหมด
KMI มีความเสถียรเพื่อให้อัปเดตเคอร์เนลได้โดยไม่ต้องสร้างโมดูลเคอร์เนลใหม่ในอิมเมจของผู้ให้บริการ
ระบบไม่รักษาความเข้ากันได้ของ KMI ระหว่างเคอร์เนล GKI ต่างๆ ดังนั้น ตัวอย่างเช่น คุณไม่สามารถแทนที่เคอร์เนล android14-6.1
ด้วยเคอร์เนล android15-6.6
ได้หากไม่สร้างโมดูลทั้งหมดขึ้นมาใหม่
รองรับเคอร์เนล GKI สำหรับรุ่นแรกและรุ่นต่อๆ ไปเท่านั้น
เวอร์ชันเก่าจะไม่รองรับ อุปกรณ์ที่ใช้ Android 14 (2023) จึงไม่รองรับเคอร์เนล android15-6.6
เมทริกซ์ความเข้ากันได้
ตารางนี้แสดงเวอร์ชันเคอร์เนลที่รองรับและทดสอบกับแพลตฟอร์ม Android แต่ละรุ่น
แพลตฟอร์ม Android | เคอร์เนลที่รองรับสำหรับการอัปเกรด | เคอร์เนลที่รองรับการเปิดใช้งาน |
---|---|---|
Android 15 (2024) |
android15-6.6
|
android15-6.6
|
Android 14 (2023) |
android14-6.1
|
android14-6.1
|
Android 13 (2022) |
android13-5.15
|
android13-5.15
|
Android 12 (2021) |
android12-5.10
|
android-4.19-stable
|
Android 11 (2020) |
android11-5.4
|
android11-5.4
|
รองรับอายุการใช้งานและแพตช์ความปลอดภัย
ACK จะได้รับการผสาน LTS จากอัปสตรีมและการแก้ไขข้อบกพร่องสำหรับโค้ดเฉพาะ Android การแก้ไขเหล่านี้รวมถึงแพตช์ความปลอดภัยของเคอร์เนลทั้งหมดที่ระบุไว้ในกระดานข่าวสารด้านความปลอดภัยของ Android รายเดือนซึ่งเกี่ยวข้องกับ ACK
ACK อาจได้รับการรองรับนานกว่าเคอร์เนลเสถียรที่ใช้งานร่วมกันซึ่งอยู่ต้นน้ำที่ kernel.org ในกรณีนี้ Google จะให้การสนับสนุนเพิ่มเติมจนถึงวันที่หยุดให้บริการ (EOL) ที่แสดงในส่วนนี้ เมื่อถึง EOL แล้ว Google จะไม่รองรับเคอร์เนลดังกล่าวอีกต่อไป และอุปกรณ์ที่ใช้เคอร์เนลดังกล่าวจะถือว่ามีช่องโหว่
ตั้งแต่เคอร์เนล 6.6 เป็นต้นไป อายุการรองรับสำหรับเคอร์เนลที่เสถียรจะนาน 4 ปี
ตารางนี้แสดงอายุของ ACK ที่รองรับ
Branch ACK | วันที่เปิดตัว |
รองรับ ตลอดอายุการใช้งาน (ปี) |
EOL |
---|---|---|---|
android-4.19-stable | 2018-10-22 | 6 | 2025-01-01 |
android11-5.4 | 2019-11-24 | 6 | 2026-01-01 |
android12-5.4 | 2019-11-24 | 6 | 2026-01-01 |
Android 12-5.10 | 2020-12-13 | 6 | 2027-07-01 |
android13-5.10 | 2020-12-13 | 6 | 2027-07-01 |
Android 13-5.15 | 2021-10-31 | 6 | 2028-07-01 |
android14-5.15 | 2021-10-31 | 6 | 2028-07-01 |
android14-6.1 | 2022-12-11 | 6 | 2029-07-01 |
Android 15-6.6 | 2023-10-29 | 4 | 2028-07-01 |
การทดสอบเคอร์เนลทั่วไป
เคอร์เนลทั่วไปจะได้รับการทดสอบกับระบบ CI หลายระบบนอกเหนือจากการทดสอบดาวน์สตรีมโดยผู้ให้บริการ
การทดสอบฟังก์ชันของเคิร์นลินุกซ์
Linux Kernel Functional Test (LKFT) จะเริ่มต้นชุดทดสอบต่างๆ อันได้แก่ kselftest, LTP, VTS และ CTS บนชุดอุปกรณ์ Physical Arm32 และ arm64 ดูผลการทดสอบล่าสุดได้ที่นี่
การทดสอบ KernelCI
การทดสอบบิลด์และเปิดเครื่องของ KernelCI จะเริ่มต้นเมื่อใดก็ตามที่มีสัญญาผูกมัดแพตช์ใหม่กับ Branch ของเคอร์เนลทั่วไป มีการทดสอบและบูตการกำหนดค่าบิลด์หลายร้อยรายการในบอร์ดต่างๆ ดูผลลัพธ์ล่าสุดสำหรับเคอร์เนล Android ได้ที่นี่
การทดสอบก่อนและหลังส่งสำหรับ Android
การทดสอบก่อนส่งใช้เพื่อป้องกันไม่ให้เกิดความล้มเหลวในเคอร์เนลทั่วไปของ Android ดูสรุปผลการทดสอบได้ในแท็บ "การตรวจสอบ" ของการเปลี่ยนแปลงโค้ดใน gerrit ของเคอร์เนลทั่วไปของ Android
การทดสอบหลังส่งของ Android จะดำเนินการกับบิลด์ที่เผยแพร่ใหม่ในสาขาเคอร์เนลทั่วไปของ Android เมื่อมีการคอมมิตแพตช์ใหม่ไปยังสาขาเคอร์เนลทั่วไปของ Android ใน ci.android.com เมื่อป้อน aosp_kernel
เป็นชื่อสาขาบางส่วนใน ci.android.com คุณจะเห็นรายการสาขาเคอร์เนลที่มีผลลัพธ์ เช่น ผลการค้นหาสำหรับ android-mainline
จะดูได้ที่นี่ เมื่อคลิกบิลด์หนึ่งๆ คุณจะเห็นสถานะการทดสอบในแท็บ Test Results
การทดสอบที่กําหนดโดย test-mapping ที่มีกลุ่มทดสอบ kernel-presubmit
ในลําดับชั้นซอร์สโค้ดของแพลตฟอร์ม Android จะทํางานเป็นการทดสอบก่อนส่งสําหรับสาขาเคอร์เนล Android ตัวอย่างเช่น การกำหนดค่าต่อไปนี้ใน test/vts/tests/kernel_proc_file_api_test/TEST_MAPPING จะเปิดใช้ vts_kernel_proc_file_api_test เป็นการทดสอบ presbumit ที่การเช็คอินรหัสเคอร์เนลทั่วไปของ Android
{
"kernel-presubmit": [
{
"name": "vts_kernel_proc_file_api_test"
}
]
}
การทดสอบวันศูนย์
การทดสอบ0 วันจะทำการทดสอบแพตช์ทีละรายการในสาขาเคอร์เนลทั่วไปทั้งหมดของ Android เมื่อมีการคอมมิตแพตช์ใหม่ ระบบจะทำการทดสอบการบูต ฟังก์ชันการทำงาน และประสิทธิภาพต่างๆ เข้าร่วมกลุ่มสาธารณะ cros-kernel-buildreports
เมทริกซ์ทดสอบ
เคอร์เนลทั่วไปของ Android | รุ่นต่างๆ ของแพลตฟอร์ม Android | ชุดทดสอบ | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
หลัก | 15 | 14 | 13 | 12 | 11 | 10 | LKFT | KernelCI | ก่อนส่ง | หลังส่ง | 0 วัน | |
android-mainline
|
✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
android15-6.6
|
✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
android14-6.1
|
✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
android13-5.15
|
✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
android12-5.10
|
✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
android11-5.4
|
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
android-4.19-stable
|
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
มีส่วนร่วมในเคอร์เนลทั่วไปของ Android
โดยทั่วไปแล้ว การพัฒนาฟีเจอร์ควรทำใน Linux หลัก ไม่ใช่ในเคอร์เนลทั่วไปของ Android เราขอแนะนำให้พัฒนาในเวอร์ชันอัปสตรีม และหลังจากที่ยอมรับการพัฒนาแล้ว ก็สามารถพอร์ตกลับไปใช้กับสาขา ACK ที่เฉพาะเจาะจงได้ง่ายๆ ตามต้องการ ทีมเคอร์เนล Android ยินดีให้การสนับสนุนการอัปสตรีมเพื่อประโยชน์ของระบบนิเวศ Android
ส่งแพตช์ไปยัง Gerrit และปฏิบัติตามหลักเกณฑ์การมีส่วนร่วมเหล่านี้