نظرة عامة على Kernel

تعتمد نواة Android على إصدار نواة الدعم الطويل الأمد (LTS) في Linux في Google، الدعم الطويل الأمد (LTS) يتم دمج النواة مع التصحيحات الخاصة بنظام Android لتكوين ما يُعرف باسم النواة المشتركة (ACKs) لنظام التشغيل Android:

وتُعرف أيضًا ملفات ACK الأحدث (الإصدار 5.4 والإصدارات الأحدث) باسم نواة GKI. تدعم نواة GKI فصل رمز النواة الأساسية العام غير المتوافق مع الأجهزة وحدات GKI من خاص بالأجهزة وحدات المورّد:

تتفاعل نواة GKI مع وحدات المورد الخاصة بالأجهزة والتي تحتوي على شريحة (SoC) ورمز خاص باللوحة. يبلغ التفاعل بين نواة GKI ووحدات المورد التي تم تفعيلها بواسطة واجهة وحدة النواة (KMI) التي تتألف من قوائم رموز تحدّد والدوال والبيانات العالمية التي تطلبها وحدات الموردين. يوضح الشكل 1 نواة GKI والمورّد بنية الوحدة:

بنية GKI
الشكل 1 بنية GKI

مسرد مصطلحات النواة

يحتوي هذا القسم على المصطلحات المستخدمة في جميع مستندات النواة.

أنواع النواة

النواة المشتركة لنظام التشغيل Android (ACK)
هي النواة التي يتم إطلاقها بعد نواة قناة الدعم الطويل الأمد (LTS) وتتضمّن رموزًا تصحيحية مهمة لنظام Android لم يتم دمجها في نواة بالخط الرئيسي لنظام Linux أو نواة متوافقة طويلة الأجل (LTS). تُعرف ملفات ACK الأحدث (الإصدار 5.4 والإصدارات الأحدث) أيضًا باسم نواة GKI لأنّها تتوافق مع فصل رمز Kernel العام غير المتوافق مع الأجهزة ووحدات GKI غير المتوافقة مع الأجهزة.
نواة المشروع المفتوح المصدر لنظام Android (AOSP)
يُرجى الاطّلاع على النواة المشتركة لنظام Android.
نواة الميزات
هي النواة التي يمكن ضمان تنفيذ ميزات إصدار النظام الأساسي لها. بالنسبة على سبيل المثال، في Android 12، كانت النواة المخصّصة لهذه الميزة هما android12-5.4 وandroid12-5.10. لا يمكن نقل ميزات Android 12 إلى الإصدار 4.19 من النواة. فستكون مجموعة الخصائص مشابهة إلى جهاز يعمل بالإصدار 4.19 من نظام التشغيل Android 11 وتمت ترقيته إلى Android 12.
النواة الأساسية العامة
الجزء من نواة GKI هو الجزء المشترك في جميع الأجهزة.
نواة عامة لصورة النواة (GKI)
أي إصدار أحدث (الإصدار 5.4 والإصدارات الأحدث) ACK kernel (حاليًا aarch64 فقط). هذا النمط يتكون النواة من جزأين: نواة GKI الأساسية مع رمز مشترك بين جميع الأجهزة ووحدات GKI. طوّرتها Google ويمكن تحميلها ديناميكيًا على الأجهزة عند اللزوم.
النواة لواجهة وحدة النواة (KMI)
يُرجى الاطّلاع على نواة GKI.
تشغيل Kernel
النواة هي نواة صالحة لإطلاق جهاز لإصدار نظام أساسي معيّن من Android. بالنسبة على سبيل المثال، في نظام Android 12، كانت نواة الإطلاق الصالحة هي 4.19 و5.4 و5.10.
نواة متوافقة طويلة الأمد (LTS)
نواة Linux متاحة للاستخدام من عامَين إلى 6 سنوات. الدعم الطويل الأمد (LTS) يتم إطلاق النواة مرة واحدة سنويًا وهي الأساس لكل ACK من Google

أنواع الفروع

فرع النواة في ACK KMI
الفرع الذي تم إنشاء نواة GKI فيها: على سبيل المثال، android12-5.10 وandroid13-5.15.
خط Android الرئيسي
الفرع الأساسي لتطوير ميزات Android عند إجراء الدعم الطويل الأمد (LTS) الجديد تم الإعلان عن إطلاق النواة kernel، فإن النواة الجديدة في GKI تشعّبها من android-mainline.
نظام التشغيل Linux الرئيسي
فرع التطوير الأساسي لنواة Linux الرئيسية، بما في ذلك نواة قناة الدعم الطويل الأمد (LTS)

مصطلحات أخرى

صورة التشغيل المُعتمَدة
النواة التي تم تسليمها في شكل ثنائي (boot.img) ومضت على الجهاز. هذه الصورة معتمَدة، بمعنى أنّها تحتوي على شهادات مضمّنة لتتمكّن Google من تنفيذ ما يلي: التأكد من شحن الجهاز بنواة معتمدة من Google.
وحدة نواة قابلة للتحميل ديناميكيًا (DLKM)
وحدة يمكن تحميلها ديناميكيًا أثناء تشغيل الجهاز بناءً على احتياجات الخاص بك. تعتبر وحدات GKI ووحدات المورّدين نوعَين من واجهات DLKM. تم إصدار DLKM في .ko ويمكن أن تكون برامج تشغيل أو يمكنها تقديم وظائف نواة أخرى.
مشروع GKI
أحد مشاريع Google يعالج تقسيم النواة من خلال فصل النواة الأساسية المشتركة. وظائف بدءًا من دعم المنظومة على رقاقة (SoC) واللوحة الخاصة بالمورِّد إلى وحدات قابلة للتحميل.
صورة Kernel عامة (GKI)
صورة تشغيل معتمَدة من Google وتحتوي على نواة GKI kernel تم إنشاؤها من شجرة مصدر ACK مناسبة لتشغيلها في قسم التمهيد جهاز Android.
KMI
واجهة بين نواة GKI ووحدات المورّدين تسمح بالمورّد تحديثًا مستقلاً عن نواة GKI. تتكون هذه الواجهة من نواة والبيانات العالمية التي تم تحديدها باعتبارها تبعيات للبائعين/المصنّعين الأصليين باستخدام قوائم الرموز لكل شريك.
وحدات GKI
وحدات Kernel صممتها Google ويمكن تحميلها ديناميكيًا على الأجهزة حيثما ينطبق ذلك. تم إنشاء هذه الوحدات كعناصر في نواة لوحة المفاتيح العامة (GKI) ويتم تقديمها. إلى جانب GKI كأرشيف system_dlkm_staging_archive.tar.gz. وحدات GKI يتم توقيعها من قِبل Google باستخدام مفتاحَي وقت إصدار النواة، وهي متوافقة فقط مع أداة GKI التي تم إنشاؤها باستخدامها.
وحدة المورّد
وحدة خاصة بالأجهزة طوّرها أحد الشركاء وتحتوي على منظومة على رقاقة (SoC) خاصة بالجهاز الأخرى. الوحدة النمطية للمورد هي نوع من وحدات النواة القابلة للتحميل ديناميكيًا.

ما هي الخطوات التالية؟