تجاهل علامات التبويب في Chrome - تجربة لتوفير الذاكرة

آدي عثمانية
آدي عثمانية

يُعد الحد من تأثير ذاكرة Chrome أحد أهم أولويات الفريق هذا العام. لقد لاحظنا بالفعل انخفاضًا بنسبة تصل إلى 45% في استخدام ذاكرة GMail وذلك بفضل التحسينات في عملية جمع البيانات المهملة في الإصدار V8، إلا أننا بدأنا للتو في ذلك. تهدف إحدى تجاربنا التالية في استخدام الذاكرة إلى المكدسين في علامات التبويب (مثلي). يُسمى ذلك تجاهل علامات التبويب.

لا تستخدم جميع علامات التبويب المفتوحة علامات تبويب. إذا كانت سعة الذاكرة منخفضة، يمكن لمتصفّح Chrome تجاهل علامات التبويب غير المثيرة للاهتمام في الخلفية.

تتوفر ميزة تجاهل علامات التبويب كتجربة في الإصدار 46 من Chrome والإصدارات الأحدث.

الخلفية

بالنسبة إلى كل علامة تبويب تفتحها، تستغرق عملية العرض عادةً حوالي 50 ميغابايت لكل علامة تبويب، على الرغم من أن معظم الأشخاص يستخدمون علامة تبويب واحدة فقط في كل مرة. إذا كانت لديك 10 علامات تبويب مفتوحة، فهناك ما لا يقل عن 450 ميغابايت من الذاكرة يتم استخدامها للحفاظ على حالة علامة تبويب الخلفية. يمكن أن يصبح ذلك صعبًا بعض الشيء بمرور الوقت.

الذاكرة المطلوبة لكل علامة تبويب

يتمثّل أحد أهدافنا في تقليل الذاكرة المستخدَمة في علامات التبويب التي لا تستخدمها في الواقع. إذا ألقيت نظرة على علامات التبويب التي تستهلك ذاكرة النظام في إدارة مهام Chrome، فأنا في الواقع "أستخدم" موقعًا أو اثنين من المواقع الإلكترونية أدناه بينما تكون علامات التبويب الأخرى في الخلفية غير مستخدمة.

إدارة المهام المطلوبة للذاكرة

هذا هو المكان الذي يساعدنا فيه تجاهل علامات التبويب في تقليل استخدام الذاكرة.

تجاهل علامات التبويب غير المستخدمة

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

لدينا أيضًا ميزة جديدة أخرى تسمح بالتخزين المؤقت لجميع موارد علامات التبويب محليًا والتي تعمل بشكل جيد مع تجاهل علامات التبويب عندما تكون غير متصل بالإنترنت. عند إعادة تنشيط علامة التبويب، نقدم لك خيار إعادة تحميل النسخة المخبأة التي تم تحميلها سابقًا عبر الشبكة. لتفعيل إعادة تحميل الصفحة من ذاكرة التخزين المؤقت، يمكنك تجربة تجربة أخرى ضمن chrome://flags/#show-saved-copy.

يمكنك تجربة تجاهل علامات التبويب اليوم من خلال تفعيلها من خلال chrome://flags/#enable-tab-discarding وإعادة تشغيل Chrome. ويمكنك التحكّم في تفعيل هذا الإعداد أو إيقافه من خلال صفحة chrome://flags نفسها على Chrome.

تفعيل تجاهل علامة التبويب لقطة الشاشة
لقطة شاشة لزر إعادة التشغيل

تتيح لك صفحة جديدة تحمل اسم chrome://discards تحديد علامات التبويب المفتوحة حاليًا

لقطة شاشة لصفحة علامات التبويب التي تم تجاهلها

لاختبار هذه الميزة، يمكنك القيام بسلوك التصفح العادي إلى أن يكون النظام في وضع الذاكرة المنخفضة، أو بدلاً من ذلك تشغيل علامة تبويب لتجاهل about:discards من خلال النقر على 'تجاهل علامة التبويب الآن'. سيؤدي هذا إلى تجاهل علامة التبويب الأخيرة في القائمة. يمكنك أيضًا تجاهل علامة تبويب معينة من القائمة عن طريق النقر فوق زر "تجاهل" المقابل لها. ستظهر علامة تبويب متجاهلة مصحوبة ببادئة [تم تجاهلها].

لقطة شاشة لمثال لعلامة التبويب التي تم تجاهلها

يتم تجاهل علامات التبويب التي يتم تجاهلها بالترتيب التالي:

  • الصفحات الداخلية مثل صفحة علامة تبويب جديدة، والإشارات المرجعية، وما إلى ذلك.
  • علامات التبويب التي تم اختيارها منذ وقت طويل
  • علامات التبويب التي تم اختيارها مؤخرًا
  • التطبيقات التي تعمل في نافذة
  • علامات التبويب المثبَّتة
  • علامة التبويب المحددة

لقد فعّلنا تجربة تجاهل علامة التبويب في Chrome Canary لنظامَي التشغيل Windows وMac، وسيتم طرحه قريبًا في Linux.

وتؤخذ علامات التبويب المُثبَّتة أيضًا في الاعتبار عند البحث عن تجاهل علامة تبويب.

الإلهام: مرحبًا بك يا حبيبتي الرائعة

إذا كانت علامة التبويب تتجاهل الأصوات المألوفة، هذا يعني أنّك صادفت على الأرجح إضافات Chrome مفيدة تمنحك نسخة أبسط من هذه الفكرة إلى حد ما، مثل The Great Pauseer. يهدف The Great Horm إلى تقليل تأثير الذاكرة ووحدة معالجة الرسومات في Chrome من خلال تعليق علامات التبويب بعد فترة مخصصة من عدم النشاط.

لقطة شاشة مُعلّقة

وعلى غرار تجاهل علامات التبويب، يمكن إلغاء تعليق علامات التبويب عند الحاجة إلى التفاعل معها مرة أخرى. تحتفظ Great Shiper بعنوان كل علامة تبويب ورمزها المفضّل، مع إظهار علامات التبويب المُعلّقة في حالة تعتيم، ما يتيح لك الانتقال إليها مباشرةً في أي وقت.

لقطة شاشة للرمز المفضّل لعلامات التبويب المُعلَّقة

تم تعليق علامات التبويب التي لا أستخدمها بشكل نشط في الخلفية، ما يؤدي إلى توفير مساحة من الذاكرة. إلا أنّ علامات التبويب التي أستخدمها بشكل نشط (GitHub وYouTube) لا تزال تعمل كالمعتاد.

لقد أجرينا في الواقع محادثة رائعة مع مؤلف إضافة Great camper أثناء تطوير عملية تجاهل علامة التبويب، ويُسعدنا رؤيتنا في تعاملنا المحلي لهذه المشكلة بطرق أكثر فاعلية من إمكانية إضافة الإضافات، مثل فقدان حالة توقُّف المستخدم عن اتخاذ الإجراءات.

التحسينات المستقبلية: تسلسل علامات التبويب

يُعد تسلسل علامات التبويب جزءًا من العمل المستقبلي الذي نعتقد أنه قد يؤدي إلى تحسينات كبيرة في أسلوبنا الحالي لتجاهل علامات التبويب. يأخذ محتوى علامة تبويب Chrome في تسلسل حالته *الحالية* في كائن ثنائي كبير. ويمكن بعد ذلك إلغاء التسلسل الثنائي لهذه النقطة الثنائية إلى علامة تبويب.

سيضع المتسلسل كل ما يحتاجه كل من Chrome وBlink وV8 بشكل صحيح (وهو شيء لم تتمكن إضافات Chrome من تحقيقه بسهولة في السابق). سيشمل التسلسل العناصر المألوفة: DOM (مع تضمين الكثير من WebGL وCanvas)، وCSS وحالة الجهاز الافتراضي V8 JavaScript.

لقطة شاشة لمفهوم المسلسل

إذا كنت تستخدم نظام التشغيل Android أو ChromeOS، لعلك تعلم أنّنا نحظر علامات التبويب في الخلفية بشكل صارم لضمان انخفاض معدّل استخدام الذاكرة (مثل تجربة تجاهل علامة التبويب التي تتناولها هذه المشاركة). كانت المشكلة في الطريقة التي نتعامل بها مع ذلك هي أن علامة التبويب الخاصة بك ستفقد *كل* حالتها.

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

جرب تجاهل علامة التبويب وأخبرنا برأيك.

نودّ معرفة ما إذا كانت هذه الميزة مفيدة لك وكيفية تحسينها. ننصحك بتجربة هذه الميزة وتجربتها (خاصةً إذا كنت من محبي علامات التبويب) وإطلاعنا على رأيك بها في التعليقات. :) نقدّر أيضًا تقديم طلبات الدعم للإبلاغ عن أي أخطاء تواجهها على crbug.com.