فرایند انتشار «تصویر هسته عمومی» (GKI)

این صفحه نحوه انتشار GKI را شرح می‌دهد، ازجمله انتشار اضطراری فصلی و خارج از باند. هدف این صفحه ارائه دستورالعمل‌هایی به تولیدکنندگان تجهیزات اصلی (OEM) درباره مکان دریافت GKI و همچنین فرایند اصلاحات اضطراری خارج از باند است. سازندگان اصلی سخت‌افزار همچنین می‌توانند از توسعه GKI استفاده کنند تا درباره نحوه همکاری با تیم هسته Android برای بهینه‌سازی هسته GKI برای محصولاتشان بیشتر بدانند.

آهنگ انتشار GKI

‫GKI در یک دوره سه‌ماهه پس‌از توقف KMI منتشر می‌شود.

ماه انتشار a12-5.10 a13-5.10 a13-5.15 a14-5.15 a14-6.1 a15-6.6* a16-6.12* a17-6.18*
‫اکتبر
۲۰۲۵
اعلام حضور
قطع شد
‫۱۶ اکتبر‫۱ اکتبر‫۱ اکتبر
پیش‌بارگیری GKI آماده است ۳۱ اکتبر‫۱۵ اکتبر‫۱۵ اکتبر
دسامبر
۲۰۲۵
اعلام حضور
قطع شد
۱ دسامبر۱ دسامبر۱ دسامبر۱ دسامبر
پیش‌بارگیری GKI آماده است ۱۵ دسامبر۱۵ دسامبر۱۵ دسامبر‫۱۵ دسامبر
ژانویه
۲۰۲۶
پایان
اعلام حضور
۱۶ ژانویه۲ ژانویه۲ ژانویه
پیش‌بارگیری GKI آماده است ۳۱ ژانویه‫۱۵ ژانویه‫۱۵ ژانویه
فوریه
۲۰۲۶
پایان
اعلام حضور
پیش‌بار کردن GKI آماده است
مارس
۲۰۲۶
اعلام حضور
قطع شد
‫۱ مارس۱ مارس‫۱۵ مارس
پیش‌بارگیری GKI آماده است ‫۱۵ مارس۱۵ مارس۳۱ مارس
آوریل
۲۰۲۶
پایان
اعلام حضور
۱۶ آوریل۱۶ آوریل۱ آوریل۱ آوریل
پیش‌بارگیری GKI آماده است ‫۳۰ آوریل۳۰ آوریل‫۱۵ آوریل‫۱۵ آوریل
مه
۲۰۲۶
اعلام حضور
قطع شد
پیش‌بارگیری GKI آماده است
ژوئن
۲۰۲۶
پایان
اعلام حضور
۱ ژوئن۱۵ ژوئن۱۵ ژوئن۱ ژوئن
پیش‌بارگیری GKI آماده است ۱۵ ژوئن۳۰ ژوئن‫۳۰ ژوئن۱۵ ژوئن
ژوئیه
۲۰۲۶
پایان
اعلام حضور
۱۶ ژوئیه۱۶ ژوئیه۱ ژوئیه۱ ژوئیه
پیش‌بارگیری GKI آماده است ‫۳۱ ژوئیه۳۱ ژوئیه۱۵ ژوئیه‫۱۵ ژوئیه
اوت
۲۰۲۶
اعلام حضور
قطع شد
پیش‌بارگیری GKI آماده است
سپتامبر
۲۰۲۶
پایان
اعلام حضور
‫۱ سپتامبر۱۶ سپتامبر۱۶ سپتامبر‫۱ سپتامبر
پیش‌بارگیری GKI آماده است ۱۵ سپتامبر۳۰ سپتامبر۳۰ سپتامبر۱۵ سپتامبر
اکتبر
۲۰۲۶
پایان
اعلام حضور
‫۱۶ اکتبر‫۱۶ اکتبر‫۱ اکتبر‫۱ اکتبر
پیش‌بارگیری GKI آماده است ۳۱ اکتبر۳۱ اکتبر‫۱۵ اکتبر‫۱۵ اکتبر
نوامبر
۲۰۲۶
پایان
اعلام حضور
پیش‌بارگیری GKI آماده است
دسامبر
۲۰۲۶
پایان
اعلام حضور
۱ دسامبر۱ دسامبر۱ دسامبر۱ دسامبر
پیش‌بارگیری GKI آماده است ۱۵ دسامبر۱۵ دسامبر۱۵ دسامبر‫۱۵ دسامبر

اعتبار ساخت GKI برای OEMها

تولیدکنندگان اصلی سخت‌افزار می‌توانند از «تصویر هسته عمومی» Android که اخیراً منتشر شده است استفاده کنند. «تولیدکنندگان تجهیزات اصلی» می‌توانند با ساختارهای دارای گواهینامه GKI راه‌اندازی کنند، به‌شرطی که با الزامات هسته «پشتیبانی بلندمدت» (LTS) در «بولتن امنیتی Android» (ASB) مطابقت داشته باشند.

نسخه‌های پخش GKI‏ ۱۶ کیلوبایتی

تیم انتشار GKI نسخه‌های GKI با اندازه صفحه ۱۶ کیلوبایتی را بااستفاده از همان آهنگ انتشار فصلی، آزمایش صلاحیت، و فرایند چرخش مجدد مانند نسخه‌های GKI با اندازه صفحه ۴ کیلوبایتی مدیریت می‌کند:

  • شاخه‌های پشتیبانی‌شده:
    • android15-6.6 (از ژانویه ۲۰۲۶)
    • android16-6.12 (از مارس ۲۰۲۶)
    • ‫android17-6.18 (از ژوئن ۲۰۲۶)
  • ساخت برابری و گواهینامه: دودویی‌های GKI‏ ۱۶ کیلوبایتی از همان برچسب منبع و شناسه ساخت هسته نسخه GKI‏ ۴ کیلوبایتی مربوطه استفاده می‌کنند. تا سال ۲۰۲۷، برگه نسخه ساخت انتشار ۱۶ کیلوبایتی در android15-6.6، android16-6.12، و android17-6.18 صفحه‌های نسخه ساخت انتشار، فایل‌های باینری انتشار GKI غیرتأییدشده ۱۶ کیلوبایتی را ارائه می‌دهد. نیازی نیست هسته‌های ۴ کیلوبایتی و ۱۶ کیلوبایتی را با هم به‌روز کنید، اگرچه انجام این کار را توصیه می‌کنیم.
  • بازچرخه‌های درخواستی: بازچرخه‌های GKI‏ ۱۶ کیلوبایتی را بااستفاده از همان فرایند و فرم درخواست بازچرخه برای نسخه‌های ساخت ۴ کیلوبایتی درخواست کنید.

انتشارهای تأییدشده فصلی

نسخه‌های فصلی GKI حاوی boot.img آزمایش‌شده‌ای است که شامل گواهی درج‌شده Google است تا گواهی دهد که باینری‌ها از خط مبنای کد منبع شناخته‌شده‌ای ساخته شده‌اند.

هر فصل، یک نامزد انتشار فصلی GKI (بدون گواهینامه) پس‌از تاریخ پایان بازبینی انتخاب می‌شود. پس‌از انتخاب نامزد انتشار سه‌ماهه، تغییرات جدید در انتشار آن ماه پذیرفته نخواهد شد. درطول دوره پنجره بسته، فقط رفع اشکال‌هایی که باعث آزمایش ناموفق می‌شوند قابل‌رسیدگی است. نسخه نامزد انتشار تحت تضمین کیفیت قرار می‌گیرد—همان‌طور که در بخش صلاحیت GKI توضیح داده شده است—تا تأیید شود که آزمایش‌های انطباق در ساختار GSI+GKI با دستگاه مرجع و همچنین Cuttlefish موفقیت‌آمیز است.

زمان‌بندی
آهنگ انتشار GKI شکل ۱. خط زمان انتشار GKI

شرایط لازم GKI

انواع ساختارهای GKI اجرای کیفیت نکته‌ها
فصلی (تأییدشده) آزمایش Cuttlefish
  • راه‌اندازی
  • VTS
  • CTS
آزمایش سخت‌افزار مرجع
  • چکمه
  • VTS
  • CTS
چرخش‌های مجدد (تأییدشده) آزمایش Cuttlefish
  • راه‌اندازی
  • VTS
  • زیرمجموعه CTS
آزمایش دستگاه مرجع
  • راه‌اندازی
  • VTS
  • بر پایه ساخت دارای گواهینامه GKI ساخته شده است.
  • ساخت پس‌از واجدشرایط بودن گواهی می‌شود.

آرتیفکت‌های ساخت را از کجا دریافت کنیم

«تولیدکنندگان تجهیزات اصلی» می‌توانند آرتیفکت‌های همه نسخه‌های پخش را از ci.android.com دریافت کنند.

می‌توانید اطلاعات بیشتری درباره CI، ازجمله نتایج آزمایش، در داشبورد ادغام پیوسته Android پیدا کنید.

پرسشگان

در اینجا برخی‌از پرسش‌های متداول مربوط به فرایند انتشار GKI آورده شده است.

آیا امکان ساختن باینری GKI جدید براساس GKI منتشرشده قبلی وجود دارد؟

بله، این کار به‌عنوان چرخش مجدد شناخته می‌شود. فرایند بازچرخش تا زمانی پشتیبانی می‌شود که نسخه GKI منتشرشده (که بازچرخش برای آن درخواست شده است) با الزامات LTS در «بولتن امنیتی Android» (ASB) مطابقت داشته باشد.

آیا بازتولید کردن دودویی‌های GKI امکان‌پذیر است؟

بله، در اینجا یک مثال آورده شده است:

GKI 2.0
5.10 kernel prebuilts from build 7364300
https://ci.android.com/builds/submitted/7364300/kernel_aarch64/latest

برای بازتولید کردن نمونه، manifest_$id.xml را بارگیری کنید و فرمان زیر را اجرا کنید:

repo init -u https://android.googlesource.com/kernel/manifest
mv manifest_7364300.xml .repo/manifests
repo init -m manifest_7364300.xml --depth=1
repo sync
# build the GKI images
# You may want to use LTO=thin to build faster for development
BUILD_CONFIG=common/build.config.gki.aarch64 build/build.sh
# (optional) build virtual platform modules
BUILD_CONFIG=common-modules/virtual-device/build.config.virtual_device.aarch64 build/build.sh

می‌توانید نسخه آرتیفکت GKI را از out/.../dist بازیابی کنید.

آیا باینری GKI (ازجمله وصله چرخش اضطراری) روی جدیدترین پایگاه کد ساخته شده است؟

نه. Respin فقط شامل وصله‌هایی است که در بالای هسته‌های تأییدشده فصلی انتخاب‌شده قرار دارند. این نسخه‌های اصلاح‌شده حاوی همه رفع اشکال‌های مسدودکننده راه‌اندازی است که تا زمان مشخصی توسط سازندگان اصلی تجهیزات بااستفاده از نسخه فصلی پایه مربوطه گزارش شده است. مثال زیر را ببینید که چگونه این نوع سناریو اتفاق می‌افتد.

  • ‫OEM1 و OEM2 تصمیم می‌گیرند از نسخه باینری GKI از نوامبر ۲۰۲۱ استفاده کنند.
  • «سازنده اصلی محصول ۱» و «سازنده اصلی محصول ۲» مشکلاتی را پیدا می‌کنند که برای پشتیبانی نیاز به وصله دارند. این وصله‌ها ممکن است متفاوت یا یکسان باشند.
  • نسخه‌های اصلاح‌شده روی باینری نوامبر ۲۰۲۱ دارای اصلاحات مسدودکننده راه‌اندازی هستند که توسط OEM1 و OEM2 درطول پنجره نسخه اصلاح‌شده گزارش شده‌اند، اما نه بیشتر.
  • مشکلات ذکرشده در مورد دوم نیز در نسخه‌های فصلی بعدی GKI گنجانده شده‌اند.

نسخه چرخش مجدد اکتبر همه وصله‌های ارائه‌شده ازسوی سازنده تجهیزات اصلی را دارد، اما وصله‌های دیگر سازنده تجهیزات اصلی بر ما تأثیر می‌گذارند، زیرا به‌طور خاص با محصولات ما آزمایش نشده‌اند. آیا امکان دارد فقط وصله خودمان را اضافه کنیم؟

این کار ممکن نیست. مسیر چرخش مجدد برای هر سازنده تجهیزات اصلی مقیاس‌پذیر نیست. درعوض، تیم GKI هر تغییری را که در ساخت‌های چرخش مجدد اعمال می‌شود به‌دقت بررسی می‌کند و تغییرات را با همه سخت‌افزارهای دردسترس قبل‌از ایجاد ساخت جدید آزمایش می‌کند. اگر تیم GKI متوجه شود که مشکل مربوط به یک سازنده تجهیزات اصلی، دستگاه، یا مدل خاص است، تیم GKI می‌تواند تأیید کند که کد اضافه‌شده توسط تغییر فقط در دستگاه، مدل، یا واحد نگهداری کالای تحت‌تأثیر اجرا می‌شود.

مزیت اصلی بازچرخه‌های یکپارچه این است که هر دستگاهی که از یک پایه انتشار استفاده می‌کند از دیگری بهره می‌برد، به‌ویژه اگر اشکالاتی که کشف می‌کنند عمومی و برای همه کاربران قابل‌اجرا باشد. اشکالات هسته اصلی در آزمایش حامل نمونه‌ای خاص از این مفهوم است.

آیا شرایطی وجود دارد که Google اطلاعات خاصی درباره وصله‌های OEM و سناریوهای مشکل ارائه دهد تا OEMها بتوانند تأثیر و خطر اجرای وصله‌ها را در محصولاتشان ارزیابی کنند؟

‫Google تا زمانی که تیم GKI مشکل را درک نکرده و همه جزئیات را جمع‌آوری نکرده باشد، هیچ تغییری به ساختار چرخش مجدد اضافه نخواهد کرد. می‌توانید این را در گزارش تغییرات (پیام ارسال) ببینید. ‫Google دستگاه خاصی را که تحت تأثیر قرار می‌گیرد فاش نمی‌کند، اما تولیدکنندگان تجهیزات اصلی همیشه می‌توانند شرح مشکل و راه‌حل آن را در گزارش تغییرات پیدا کنند.