تتضمن أجهزة 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.
الشكل 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
المتوفرة لوحدات المنتج.