GWP-ASan وKFENCE

GWP-ASan وKFENCE هما أدوات احتمالية للكشف عن الذاكرة لمساحة المستخدمين والنواة، على التوالي. عند التمكين، تتم حماية عدد صغير من التخصيصات بصفحات ذاكرة إضافية تحيط بالذاكرة المخصصة. يسمح ذلك باكتشاف تجاوزات المخزن المؤقت والاستخدام بعد التحرر بحمل أداء ضئيل. حتى مع وجود معدل عينة صغير للتخصيصات الخاضعة للحراسة، عند نشرها على نطاق واسع، يمكنها اكتشاف أخطاء سلامة الذاكرة بشكل فعال. منذ طرحها، ساعدت هذه الأدوات في تحديد العديد من الأخطاء في النظام الأساسي وأثبتت أنها أداة قيمة لتحسين الاستقرار والأمان. نحن نشجع البائعين على تمكينهم ومراقبة الأخطاء المكتشفة على أجهزة المستخدم النهائي عن كثب.

يجب على المطورين التحقق من وجود الأعطال عن طريق التحقق من /data/tombstones أو logcat أو عن طريق مراقبة خط أنابيب DropboxManager الخاص بالمورد بحثًا عن أخطاء المستخدم النهائي.

لمزيد من المعلومات، راجع مستنداتنا حول تصحيح أخطاء التعليمات البرمجية الأصلية لنظام Android.

تصحيح أخطاء رمز نظام Android الأساسي الأصلي

GWP-ASan لاكتشاف أخطاء سلامة ذاكرة مساحة المستخدم

تم تقديم GWP-ASan في Android 11 لتخصيصات كومة مساحة المستخدم. عندما يكتشف GWP-ASan خطأ ما، فإنه يسجل تقرير تعطل مع Cause: [GWP-ASan]: وينهي العملية. تحتوي تقارير الأخطاء على معلومات تخصيص وإلغاء تخصيص إضافية تسهل تحديد السبب الجذري.

يتم تمكين GWP-ASan بشكل عشوائي، عند بدء التشغيل، لـ 1% من عمليات النظام أو التطبيقات وللتطبيقات التي تقوم بتعيين android:gwpAsanMode في ملف AndroidManifest.xml الخاص بها.

GWP-ASan

KFENCE لاكتشاف أخطاء سلامة ذاكرة kernel

قدم Android 12 KFENCE لتخصيصات كومة النواة. عندما يكتشف KFENCE خطأ ما، فإنه يسجل تقرير عطل يبدأ بـ BUG: KFENCE, ويعطل صفحات الحماية ويستمر في التنفيذ. يتيح ذلك آلية الكشف عن أخطاء kernel التي تؤثر على تجربة المستخدم إلى الحد الأدنى.

لمعرفة المزيد حول KFENCE، راجع الوثائق المتوفرة على https://www.kernel.org