نظرة عامة

تتضمن أجهزة Android عدة أقسام تؤدي وظائف مختلفة في عملية التمهيد.

الأقسام العادية

  • قسم "boot" يحتوي هذا القسم على صورة kernel ويتم إنشاؤه باستخدام mkbootimg. بإمكانك استخدام قسم افتراضي لتثبيت أي من الصورتَين مباشرةً بدون تثبيت قسم تمهيد جديد. يحتوي هذا القسم أيضًا على قرص ذاكرة التخزين المؤقت العام في الأجهزة التي تم تشغيلها قبل الإصدار 13 من نظام التشغيل Android

    • النواة يستبدل القسم kernel الافتراضي بالنواة (zImage، zImage-dtb، Image.gz-dtb) عن طريق كتابة صورة النواة الجديدة فوق الصورة القديمة صورة النواة (kernel). إذا كانت نواة التطوير المتوفرة غير متوافقة، يمكنك بحاجة إلى تحديث القسم vendor أو system أو dtb (إذا كان متوفرًا) باستخدام وحدات kernel المرتبطة.

    • يستبدل القسم ramdisk الافتراضي ذاكرة الوصول العشوائي (RAM) بمقدار كتابة صورة ramdisk الجديدة فوق صورة الهرم القديمة.

    تحدد عملية الاستبدال موقع بداية الصورة الحالية في eMMC ونسخ الصورة الجديدة إلى هذا الموقع. الصورة الجديدة (النواة أو ramdisk) أكبر من المساحة الموجودة؛ لتوفير مساحة، برنامج الإقلاع نقل البيانات بعد الصورة أو إلغاء العملية مع خطأ.

  • قسم "init_boot" يحتوي هذا القسم على قرص ذاكرة عام التي تعمل بنظام التشغيل Android 13 والإصدارات الأحدث

  • قسم "system" يحتوي هذا القسم على إطار عمل Android.

  • قسم "odm" يحتوي هذا القسم على الشركة المصنّعة للتصميم الأصلي (ODM). عمليات التخصيص لحزم دعم لوحة موردي المنظومة على الرقاقة (SoC) وتمكّن عمليات التخصيص هذه من استبدال مكونات المنظومة على الرقاقة (SoC) أو تخصيصها. تنفيذ وحدات النواة للمكونات الخاصة باللوحة والبرامج الخفية الميزات الخاصة بـ ODM على طبقات تجريد الأجهزة (HALs). هذا القسم هو اختيارية يُستخدم عادةً ليحتوي على تخصيصات بحيث يمكن للأجهزة استخدام صورة مورّد واحدة لرموز التخزين التعريفية للأجهزة المتعدّدة. للاطّلاع على التفاصيل، يُرجى مراجعة ODM. الأقسام:

  • قسم "odm_dlkm" هذا القسم مخصّص لتخزين نواة ODM. الوحدات. تخزين وحدات النواة لـ ODM في قسم odm_dlkm (على عكس ذلك) إلى قسم odm) إلى إمكانية تحديث وحدات النواة ODM). بدون تحديث القسم odm.

  • قسم "recovery" ويخزِّن هذا القسم صورة الاسترداد، وهي تم تشغيله أثناء عملية التحديث عبر الهواء. الأجهزة التي تتوافق مع السلس يمكن من خلال تخزين صور استرداد الحساب رامقرص مضمَّن في الصورة boot أو init_boot (بدلاً من صورة صورة).

  • قسم "cache" يخزِّن هذا القسم البيانات المؤقتة وهو اختياري إذا كان الجهاز يستخدم تحديثات سلسة. لا يحتاج قسم ذاكرة التخزين المؤقت إلى قابلة للكتابة من برنامج الإقلاع، ولكن يجب أن تكون قابلة للمسح. القسم يعتمد الحجم على نوع الجهاز وعلى مدى توفُّر المساحة على "userdata". وعادةً ما يكفي من 50 إلى 100 ميغابايت.

  • قسم "misc" يُستخدم هذا القسم بواسطة قسم الاسترداد 4 كيلوبايت أو أكبر.

  • قسم "userdata" يحتوي هذا القسم على تطبيقات ثبّتها المستخدم بما في ذلك بيانات التخصيص.

  • قسم "metadata" يتم استخدام هذا القسم لتخزين البيانات الوصفية مفتاح تشفير عندما يستخدم الجهاز بيانات وصفية تشفير البيانات. الحجم هو 16 ميغابايت أو أكبر. ولا يتم تشفير هذه البيانات ولا يتم أخذ لقطات منها في الاعتبار. ويتم محو البيانات عند إعادة ضبط الجهاز على الإعدادات الأصلية. استخدام هذا القسم هو محدودة للغاية.

  • قسم "vendor" يحتوي هذا القسم على أي برنامج ثنائي قابلة للتوزيع إلى AOSP. إذا لم يكن الجهاز يحتوي على معلومات مملوكة، فيمكنك حذف هذا القسم.

  • قسم "vendor_dlkm" هذا القسم مخصص لتخزين المورِّد ووحدات النواة. تخزين وحدات النواة الخاصة بالمورّد في قسم "vendor_dlkm" (على عكس قسم vendor) من الممكن تحديث النواة (kernel) بدون تحديث القسم vendor.

  • قسم "radio" يحتوي هذا القسم على صورة الراديو وهو مطلوب فقط للأجهزة التي تشتمل على جهاز لاسلكي مع برنامج خاص بالراديو في مخصص.

  • قسم "tos" يخزِّن هذا القسم الصورة الثنائية لنظام التشغيل Trusty OS. ولا يُستخدم إلا إذا كان الجهاز يتضمن Trusty. لمعرفة التفاصيل، يُرجى الاطّلاع على بنود الخدمة. الأقسام:

  • قسم "pvmfw" يخزِّن هذا القسم الجهاز الافتراضي المحمي البرامج الثابتة (pvmfw) وهي الرمز البرمجي الأول الذي يتم تشغيله في الأجهزة الافتراضية المحمية. عرض البرامج الثابتة للأجهزة الافتراضية المحمية لمزيد من التفاصيل.

الأقسام الديناميكية

يمكن للأجهزة التي تعمل بنظام التشغيل Android 11 والإصدارات الأحدث دعم الأقسام الديناميكية، وهي نظام تقسيم مساحة المستخدم لنظام Android يتيح إنشاء أقسام أو تغيير حجمها أو إتلافها أثناء البث الهوائي (OTA) التحديثات. لمعرفة التفاصيل، يُرجى الاطّلاع على القسم ديناميكية. الأقسام.

تخصيص الأقسام المهمة

إذا كان تشغيل الجهاز يتطلب أقسامًا أو بيانات محددة، يجب تحديد تلك الأقسام أو البيانات إما على أنها محمية بالكامل أو قابلة لإعادة الفلاش، مما يعني يمكن إعادة إنشاء هذه الوحدات أو توفيرها أو استخراجها باستخدام أمر fastboot oem. وهي تشمل بيانات مثل الإعدادات والأرقام التسلسلية الخاصة بالمصنع لكل جهاز وبيانات المعايرة وغيرها.

التغييرات التي تم إجراؤها في Android 11

يتضمّن Android 11 العديد من التغييرات على الأقسام بما في ذلك القيود المفروضة على الربط بالمكتبات والصيغ الجديدة لصور Sayg.

تصميم قسم Android

الشكل 1. تنسيق التقسيم في Android 11

  • صورة نظام واحدة (SSI): صورة مفاهيمية جديدة تحتوي على system وsystem_ext صورة. عندما تكون هذه الأقسام شائعة في مجموعة من الأجهزة المستهدفة، يمكن لهذه الأجهزة مشاركة مؤشر SSI وتخطي إنشاء system وsystem_ext صورة.

  • قسم "system_ext" قسم جديد يمكنه استخدام موارد system ويمكن أن تتضمّن وحدات نظام:

    • يمكنك تمديد وحدات نظام AOSP في قسم system. ننصحك بما يلي: إرسال هذه الوحدات إلى بروتوكول AOSP كي يتم تثبيتها على "system" التقسيم لاحقًا.

    • ادمِج وحدات خاصة بالمصنّعين الأصليين أو المنصّات: ننصحك بفصل هذه الوحدات لكي يتم تثبيتها في قسم "product" أو "vendor".

  • قسم "system" صورة النظام الشائعة المستخدمة لمنتجات المصنّعين الأصليين أر ننصح بنقل الوحدات المملوكة من قسم system إما من خلال نقل البيانات إلى بروتوكول AOSP أو من خلال نقلها إلى قسم system_ext.

  • قسم "product" ويمكن لهذا القسم الآن استخدام الواجهات المسموح بها تثبيت وحدات خاصة بالمنتج وغير مضمَّنة مع أي الأقسام.

تغييرات VNDK

حزمة تطوير البرامج الأصلية للمورّدين (VNDK) هي مجموعة من المكتبات المثبتة في قسم system ومصممة حصريًا للبائعين لتنفيذ HALs.

  • في نظام التشغيل Android 10 والإصدارات الأقدم، يمكن للقسم vendor الربط بمكتبات VNDK في القسم system، ولكن يتعذّر الربط بمكتبات أخرى في system قسم القرص. يمكن للوحدات الأصلية في قسم product الارتباط بأي مكتبة. في قسم system.

  • في نظام التشغيل Android 11 والإصدارات الأحدث، تم رصد product وvendor. إمكانية الارتباط بمكتبات VNDK في قسم system، إلا أنه لا يمكن يؤدي إلى مكتبات أخرى في القسم system.

خيارات المنتج قريبًا

يستخدم نظام التصميم Soong صيغ الصور لتقسيمها. وبناء التبعيات. يمكن للوحدات الأصلية (/build/soong/cc) أن تؤدي إلى تغيير النظام. إلى الصيغة الأساسية ووحدات معالجة عمليات الموردين إلى لمتغير البائع لا يمكن ربط وحدة في نسخة واحدة من الصورة بوحدات أخرى في صيغة مختلفة للصورة.

  • في نظام التشغيل Android 10 أو الإصدارات الأقدم، تنشئ وحدة النظام الخيارات الأساسية تلقائيًا. ويمكنه أيضًا إنشاء خيارات خاصة بالمورّدين من خلال تحديد vendor_available: true في Android.bp ملفّ؛ وهذا يمكّن وحدات الموردين من الارتباط بوحدات النظام. يمكن أيضًا لمكتبات VNDK، وهي صيغ من مورّدي مكتبات system إنشاء خيارات مورِّدين لوحدات المورِّدين من خلال تحديد vendor_available: true في ملفات Android.bp (انظر مثال).

  • في نظام Android 11، يمكن لوحدة النظام أيضًا إنشاء خيار للمنتج (بالإضافة إلى الخيارات الأساسية وخيارات المورّد) من خلال وهي تحديد vendor_available: true.

  • في الإصدار 12 من نظام التشغيل Android أو الإصدارات الأحدث، تتضمن وحدة النظام تنشئ ميزة "vendor_available: true" صيغة مورّد بالإضافة إلى الخيارات الأساسية. المتغير. لإنشاء خيار منتج، يجب أن يكون product_available: true: محددة. بعض مكتبات VNDK التي لا تستخدم product_available: true المتوفرة لوحدات المنتج.