انتقل Chrome لاستخدام طبقة الأوزون على أنظمة X11

جوجل كروم

قبل بضعة أيام أرسل Chrome إلى جميع مستخدمي الفرع الثابت للمتصفح تغييرًا والتي ، بشكل افتراضي ، ينشط رمزًا جديدًا لتنظيم الإخراج على الأنظمة التي تحتوي على خادم X.، على أساس استخدام طبقة تسمى «الأوزون» التي تلخص التفاعل مع النظام الفرعي الرسومي.

باستخدام الأوزون يسمح بتوفير الدعم لـ X11 و Wayland في نفس بنية Chrome، دون التقيد بنظام فرعي محدد للرسومات.

حول الأوزون

الأوزون عبارة عن طبقة تجريد أساسية أسفل نظام نافذة Aura والتي تُستخدم للإدخال والرسومات منخفضة المستوى ، وبالتالي يدعم التجريد الأنظمة الأساسية التي تتراوح من أهداف SoC المدمجة إلى أنظمة النوافذ البديلة الجديدة إلى X11 على Linux مثل Wayland أو Mir لعرض Aura Chromium من خلال توفير واجهة تنفيذ للنظام الأساسي.

نظرًا لأنه من المرغوب فيه استخدام Chrome في مجموعة متنوعة من المشاريع ، يتم العمل على تسهيل الترحيل إلى الأنظمة الأساسية الجديدة.

لدعم هذا الهدف ، يتبع الأوزون المبادئ التالية:

  • الواجهات ، وليس ifdefs: يتم التعامل مع الاختلافات بين الأنظمة الأساسية عن طريق استدعاء كائن يوفره النظام الأساسي من خلال واجهة بدلاً من استخدام الترجمة الشرطية. تظل المكونات الداخلية للمنصة مغلفة وتعمل الواجهة العامة كجدار حماية بين الطبقات العليا المحايدة للمنصة (الهالة ، والوميض ، والمحتوى ، وما إلى ذلك) والطبقات السفلية الخاصة بالمنصة. 
  • واجهات مرنة: يجب أن تلخص واجهات النظام الأساسي بالضبط ما يحتاجه Chrome من النظام الأساسي ، مع الحد الأدنى من القيود على تنفيذ النظام الأساسي ، بالإضافة إلى الحد الأدنى من القيود على استخدام الطبقات العليا.
  • وقت التشغيل لجميع الأنظمة الأساسية: لتجنب التجميع الشرطي في الطبقات العليا ، فإنه يسمح لنا ببناء منصات متعددة في ثنائي واحد وربطها في وقت التشغيل.
  • التفرع البسيط - تبدأ العديد من المنافذ على شكل متفرع ويقوم العديد منها لاحقًا بدمج الكود الخاص بها في اتجاه المنبع ، بينما يتمتع البعض الآخر بعمر طويل خارج الشجرة. هذا جيد ، ويجب علينا تسهيل هذه العملية لتشجيع الشوكات.

هذا هو السبب استقلالية خصائص بناء واجهة رسومية على أنظمة مختلفة تعمل في Chrome يتم تنفيذه باستخدام مكدس رسومات Aura الخاص به عبر الأنظمة الأساسية. تعمل Aura كمدير نوافذ (Aura shell) ، تعمل من خلال خادمها المركب الخاص بها وتستخدم أدوات GPU المتاحة لتسريع العمليات الرسومية.

لتوليد عناصر الواجهة ، يتم استخدام مجموعة أدوات رسومات Aura UI ، التي توفر مجموعتها الخاصة من عناصر واجهة المستخدم ومربعات الحوار وعناصر التحكم ومعالجات الأحداث. من بين إمكانيات مكدس الرسومات الأساسية (X11 أو Wayland أو Cocoa أو Windows) ، يتم استخدام الإخراج الموجود أعلى نافذة الجذر فقط.

يتم تقليل جميع العمليات المحددة باستخدام مكدس رسومات Linux إلى طبقة واحدة الأوزون المجرد قابل للاستبدال بسهولة. حتى الآن ، تم توفير دعم Ozone في شكل خيار والافتراضي هو الواجهة الخلفية القديمة بترميز X11.

استمر العمل على ترجمة إصدارات X11 لاستخدام طبقة الأوزون منذ عام 2020 وبالنسبة للمستخدمين ، بدأ التضمين التدريجي لخلفية Ozone / X11 افتراضيًا بإصدار Chrome 92.

أي قبل أيام قليلة ، تم تنشيط الواجهة الخلفية الجديدة لجميع مستخدمي Chrome Linux. بالإضافة إلى X11 و Wayland ("–ozone-platform = wayland" و "–ozone-platform = x11") ، يطور Ozone أيضًا منصات للإخراج من خلال برامج تشغيل رسومات KMS / DRM ، وإخراج رسومات ASCII باستخدام مكتبة libcaca ، وتقديمها إلى PNG الصور (مقطوعة الرأس) وتتدفق عبر أجهزة Chromecast.

أخيرًا ، ذكر أن تم التخطيط للخلفية أعلاه، والذي يدعم العمل فقط من خلال X11 ، سيتم إهماله وإزالته في النهاية من قاعدة الشفرة (بعد أن وصلت الواجهة الخلفية الجديدة لـ Ozone / X11 إلى التكافؤ في الوظائف وتمكينها افتراضيًا ، لم يكن هناك فائدة من الاحتفاظ بخلفية X11 أخرى في المتصفح.)

مصدر: https://chromium.googlesource.com


كن أول من يعلق

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.