قد تتيح لك وحدات DSU لنظام Android 10 تجربة تحديثات OTA دون الالتزام

هل أردت يومًا تجربة التحديث دون التحديث فعليًا؟ تم تصميم DSU في Android 10 لهذا الغرض، ولكنه محدود حاليًا. يمكن أن يتغير قريبا.

يعد نظام التشغيل Android وتجزئة مستوى الأمان مشكلة كبيرة تستثمر Google الكثير من الجهود الهندسية لمكافحتها. في العامين الماضيين، أعلنت Google عن مبادرتين رئيسيتين تهدفان إلى تسريع عملية نشر التحديثات: مشروع التريبل و مشروع الخط الرئيسي. تم الإعلان عن هذا الأخير فقط في شهر مايو خلال جوجل آي/أو 2019، وهو مدعوم فقط على الأجهزة التي تعمل بنظام التشغيل Android 10. لكن الأول كان موجودًا منذ ذلك الحين جوجل آي/أو 2017، لذلك رأينا مدى تأثيرها على تحديثات Android مع أندرويد 9 باي و أندرويد 10.

إلى جانب تقليل التجزئة، تريد Google أيضًا أن يكون Project Treble مفيدًا لمطوري التطبيقات. ولهذا السبب كشفوا النقاب تحديثات النظام الديناميكية (DSU) في Android 10 للسماح للمطورين بتجربة إصدار مجرد من تحديث نظام التشغيل الجديد دون إلغاء قفل أداة تحميل التشغيل أو مسح البيانات. نظرًا لإمكانات DSU، فإن Google لا تتوقف عند هذا الحد، فهي تعمل على توسيع فائدتها من خلال تمكين تثبيت تحديثات OTA من مصنعي المعدات الأصلية بنفس طريقة تثبيت GSI.

هذا كثير من المصطلحات، ولكن تخيل أن هذا يحدث في المستقبل: تقوم إحدى الشركات المصنعة للمعدات الأصلية (OEM) بإصدار هاتف يعمل بنظام Android 10 وتبدأ برنامجًا تجريبيًا لنظام Android 11. أنت مهتم بتجربة هذا الإصدار التجريبي لرؤية الميزات الجديدة، ولكنك لا تريد المخاطرة باستقرار برنامج التشغيل اليومي الحالي لديك. بدلاً من تحديث التحديث التجريبي ثم الأمل في أن يكون مستقرًا تمامًا، لماذا لا يتم تثبيته مؤقتًا من خلال تدفق DSU؟ إذا لم يعجبك ذلك، فما عليك سوى إعادة التشغيل وسيعود الإعداد إلى وضعه الطبيعي. إذا أعجبك ذلك، يمكنك "الالتزام" بالتحديث.

لا أعلم ما رأيك، ولكن هذا سيكون تغييرًا مرحبًا به لنظام Android والذي من شأنه أن يجعل الاختبار التجريبي أكثر متعة. لن تضطر بعد الآن إلى الالتزام بالتحديث التجريبي فقط لترى كيف سيكون الأمر بنفسك. أنا متأكد من أن الكثير منكم متشوق لرؤية الإصدار التجريبي من Android 10 لجهازك، ولكن قد لا تشعر بالارتياح عند تثبيته على الفور. مع التغييرات التي تم إجراؤها على DSU، لن يكون ذلك مصدر قلق.

تحديثات النظام الديناميكية في Android 10+ - ما الذي يتغير

لوكا ستيفاني، صديق بوابة XDA وأ المطور المعترف به، أخبرنا عن أ التزام جديد تم دمجها في AOSP بعنوان "تركيب أقسام DSU متعددة عند وجودها." يُجري الالتزام تغييرات على جدول نظام الملفات (fstab) وملف عملية init لجعلها بحيث يمكن تركيب أقسام DSU بخلاف النظام، بما في ذلك المنتج والبائع حاليًا، أثناء التمهيد عملية.

رمز جديد في fstab لإضافة دعم لتحميل صور Product_gsi وeller_gsi بدلاً من أقسام المنتج والبائعين الموجودة على التوالي. يشير أحد التعليقات إلى أنه يمكن توقيع وحدات DSU بواسطة الشركة المصنّعة للمعدات الأصلية (OEM)، ولكنها بخلاف ذلك تدعم GSIs الرسمية لـ Google.

حاليًا، تم تصميم DSU للسماح لك فقط بتشغيل صورة النظام العامة (GSI)، وهي صورة نظام مجردة تم تجميعها من AOSP، حتى تتمكن من اختبار واجهات برمجة التطبيقات الجديدة والتغييرات الأخرى في آخر تحديث لنظام Android. ومع ذلك، مع هذا التغيير، ستقبل DSU أيضًا صور المنتج والبائعين. يحتوي الأول على تطبيقات ومكتبات وملفات أخرى خاصة بالجهاز، بينما يحتوي الأخير على ثنائيات خاصة بالجهاز. لقد صممه Project Treble بحيث يمكنك تشغيل جهاز باستخدام صورة نظام بدون ملفات خاصة بالجهاز، لذا فإن السماح الآن بتحميل المنتج والبائعين لا يبدو منطقيًا.

ومع ذلك، يقول أحد مهندسي Google صراحةً أن هذا التغيير يهدف إلى "السماح لمصنعي المعدات الأصلية [بتثبيت] حزم OTA على /data، ثم استخدام تدفق "DSU" لتركيب Product.img، system.img و[و] بائع.img من /data." وهذا يعني أنه بدلاً من استبدال التثبيت الحالي بحزمة OTA الجديدة، يمكن تحميل OTA مؤقتًا عبر DSU. بعد تجربة التحديث عبر الهواء، "يمكن للمستخدم أن يقرر ما إذا كان يريد "إرسال" تلك الصور إلى /super أم لا." هذا الجزء الأخير عنه لا يزال "إجراء" التغييرات قيد التنفيذ، كما يشير أحد مهندسي Google إلى أنه "ليس لدينا حاليًا خطة لإنشاء أقسام DSU دائم في سياق DSU." ثم يوضح كيف يمكن تنفيذ ذلك، ولكن هذا التنفيذ "يتجاوز نطاق" هذا التصحيح الحالي.

هناك بعض المصطلحات والمفاهيم التي نحتاج إلى شرحها هنا لأن Google تحب تغيير نظام التقسيم في كل إصدار من إصدارات Android. بالنسبة للمبتدئين، أوصي بقراءة مقالتي السابقة حول تحديثات النظام الديناميكية للحصول على لمحة عامة عن كيفية عمله، ولكن باختصار، فإنه يستفيد من مفهوم "القسم الديناميكي"، وهو قسم حقيقي للتخزين (يسمى القسم "الفائق") الذي يتم تقسيمه إلى أقسام منطقية يمكن تغيير حجمها (بما في ذلك النظام، والمورد، والمنتج، وsystem_ext)، لتثبيت ملف مؤقتًا جي إس آي. عند تثبيت GSI، تقوم DSU بإنشاء مساحة للنظام الجديد وصور بيانات المستخدم عن طريق تغيير حجم قسم بيانات المستخدم الحالي. تعتبر العناصر الأساسية لدعم DSU (الأقسام الديناميكية، وقرص ذاكرة الوصول العشوائي، ونقاط التفتيش للنسخ الاحتياطي للبيانات) هي متطلبات التشغيل لـ أندرويد 10، لذا فإن أي جهاز يتم تشغيله باستخدام الإصدار الجديد من نظام التشغيل Android يجب أن يدعم DSU. لا يعد DSU حل التمهيد المزدوج لأقراص ROM المخصصة التي يبحث عنها البعض منكم، لأنه لا يمكن تثبيت سوى الصور التي تطابق مفاتيح التمهيد الذي تم التحقق منه لنظام Android (AVB). ومع ذلك، مع هذا التغيير الجديد، يمكن أن يكون أكثر فائدة في المستقبل.

علاوة على الأقسام الديناميكية، قدمت Google أيضًا مفهوم "A/B الافتراضي" في Android 10. هذا هو في الأساس تنفيذ أقسام A/B مزدوجة من قبل، ولكن مع أقسام منطقية بدلا من ذلك. تتضمن أقسام A/B نسخًا من الأقسام المهمة للسماح بإجراء تحديثات سلسة وآمنة. إن استخدام "A/B الافتراضي" هو الطريقة التي يتصور بها أحد مهندسي Google "إلزام" أقسام DSU على الأقسام من التثبيت الحالي؛ كما هو الحال مع عملية تحديث A/B OTA الحالية، ربما يتم إجراء التغييرات من الصور الجديدة على القسم غير النشط.

لا تزال هذه التغييرات قيد التطوير وقد تستغرق بعض الوقت قبل أن يتم استخدامها بواسطة Google أو مصنعي المعدات الأصلية. نحن ربما لن نرى أي تطبيقات لهذا حتى يتم إصدار Android 11 R بعد ذلك على أقرب تقدير سنة. ومع ذلك، ليس هناك ما يضمن أن مصنعي المعدات الأصلية سيعتمدون هذه الميزة في تحديثات OTA الخاصة بهم. نظرًا لمدى فائدة هذا في الاختبار التجريبي، أتصور أن Google تعمل بالفعل مع مصنعي المعدات الأصلية المهتمين لتمكين هذه الميزة للتحديثات المستقبلية. أنا شخصيا متحمس لاحتمال تجربة تحديثات Android الجديدة قبل شراءها، ولكن ماذا عنك؟