أقسام Ramdisk

في Android 10 و11، المرحلة الأولى من الهرم يحتوي على البرنامج الثنائي للمرحلة الأولى (الذي يُجري التثبيت المبكر على النحو المحدد) من خلال إدخالات fstab) وملفات fstab للمورد. (كما هو الحال في Android 9 والإصدارات الأقدم، system.img يتضمن محتوى $TARGET_ROOT_OUT.)

  • بالنسبة للأجهزة التي تحتوي على قرص بدء التشغيل (غير A/B)، تكون المرحلة الأولى عبارة عن قيمة ثابتة قابل للتنفيذ على /init. يتم تثبيت "system.img" على هذا الجهاز باسم /system، ثم تنفيذ عملية جذر مفتاح التحكّم لنقل قاعدة التثبيت في /system إلى /. يتم تحرير محتوى قرص التخزين بعد اكتمال التثبيت.

  • بالنسبة للأجهزة التي تستخدم الاسترداد كقرص شديد، تقع المرحلة الأولى في /init في ذاكرة الوصول العشوائي لاسترداد الحساب. تبدِّل هذه الأجهزة الجذر إلى /first_stage_ramdisk لإزالة مكونات الاسترداد من البيئة، ثم نتابع نفس الشيء مثل الأجهزة التي تحتوي على قرص تشغيل (أي تثبيت system.img كـ /system، ويمكنك تبديل الجذر لنقل هذا التثبيت إلى / مجانًا محتوى قرص ذاكرة التخزين المؤقت بعد التثبيت). إذا كانت السمة androidboot.force_normal_boot=1 الموجودة في سطر أوامر النواة (أو ملف تعريف تم إعداده من نظام Android) 12 فصاعدًا)، يتم تشغيل الأجهزة بشكل طبيعي (على Android) بدلاً من بدء تشغيل وضع الاسترداد.

بعد انتهاء إعداد المرحلة الأولى، يتم تنفيذ /system/bin/init مع selinux_setup لتجميع وتحميل SELinux على النظام. أَخِيرًا، ينفذ init /system/bin/init مرة أخرى باستخدام الوسيطة second_stage. في هذا الوقت تبدأ المرحلة الرئيسية من init وتستمر في عملية التمهيد باستخدام init.rc نص برمجي

توضح الأقسام التالية تفاصيل الاختلافات في تنسيقات الأقسام للنُسخ غير A/B الأجهزة التي تسبق Android 10 وبعده.

تنسيقات الأقسام (الأجهزة التي لا تستخدم A/B)

توضح الأقسام التالية تفاصيل الاختلافات في تنسيقات الأقسام للنُسخ غير A/B الأجهزة التي تسبق Android 10 وبعده.

Boot.img

Ramdisk
(Android 8.x والإصدارات الأقدم)
النظام كجذر
(Android 9)
Ramdisk
(Android 10 و 11)

يحتوي على نواة وramdisk.img.

ramdisk.img
  -/
    - init.rc
    - init
    - etc -> /system/etc
    - system/ (mount point)
    - vendor/ (mount point)
    - odm/ (mount point)
    ...
    
يحتوي على نواة تمهيد عادية فقط.

يحتوي على نواة وramdisk.img.

ramdisk.img
  -/
    - init
    - vendor fstab files
    - system/ (mount point)
    - vendor/ (mount point)
    - odm/ (mount point)
    ...
    

استرداد.img

يحتوي على نواة الاسترداد وramdisk.img لاسترداد البيانات

نظام.img

Ramdisk
(Android 8.x والإصدارات الأقدم)
النظام كجذر
(Android 9)
Ramdisk
(Android 10 و 11)

يحتوي على system.img.

system.img
  -/
    - bin/
    - etc
    - vendor -> /vendor
    - ...
   

يشتمل على المحتوى المدمج لـ "$TARGET_SYSTEM_OUT" $TARGET_ROOT_OUT

system.img
  -/
    - init.rc
    - init
    - etc -> /system/etc
    - system/
      - bin/
      - etc/
      - vendor -> /vendor
      - ...
    - vendor/ (mount point)
    - odm/ (mount point)
    ...
    

يشتمل على المحتوى المدمج لـ "$TARGET_SYSTEM_OUT" $TARGET_ROOT_OUT

system.img
  -/
    - init.rc
    - init -> /system/bin/init
    - etc -> /system/etc
    - system/
      - bin/
      - etc/
      - vendor -> /vendor
      - ...
    - vendor/ (mount point)
    - odm/ (mount point)
    ...
    

تنسيقات الأقسام (أجهزة A/B)

توضِّح الأقسام التالية بالتفصيل الاختلافات في تنسيقات الأقسام لأجهزة A/B. قبل الإصدار Android 10 وبعده.

Boot.img

النظام كجذر
(Android 9)
Ramdisk
(Android 10 و 11)
يحتوي على نواة تشغيل عادية وذاكرة وصول عشوائي مخصصة للاسترداد (BOARD_USES_RECOVERY_AS_BOOT := true).

استرداد-ذاكرة الوصول العشوائي يُستخدم فقط لبدء عملية الاسترداد.
يحتوي على نواة تشغيل عادية وذاكرة وصول عشوائي مخصصة للاسترداد (BOARD_USES_RECOVERY_AS_BOOT := true).

ذاكرة الوصول العشوائي لملف الاسترداد يُستخدم للتشغيل في كل من نظام الاسترداد ونظام Android.
ramdisk.img
  -/
    - init -> /system/bin/init
    - first_stage_ramdisk
       - vendor fstab files
    - etc -> /system/etc
    - system/ (mount point)
    - vendor/ (mount point)
    - odm/ (mount point)
    ...
    

نظام.img

يحتوي على المحتوى المدمج لـ $TARGET_SYSTEM_OUT و$TARGET_ROOT_OUT.

system.img
  -/
    - init.rc
    - init -> /system/bin/init
    - etc -> /system/etc
    - system/
      - bin/
      - etc/
      - vendor -> /vendor
      - ...
    - vendor/ (mount point)
    - odm/ (mount point)
    ...