تتعامل أجهزة الحوسبة المتنقلة مع كميات أكبر بشكل متزايد من البيانات الشخصية الحساسة. أدى وجود مثل هذه البيانات الحساسة ، مدعومًا بالاتصال المستمر بالعالم الخارجي ، إلى زيادة الاستثمارات من الجهات الخبيثة المهتمة باستغلال نقاط الضعف لتحقيق أهدافها.
توفر أنظمة التشغيل ، بمساعدة وحدات إدارة ذاكرة الأجهزة (MMUs) ، أفكارًا تجريدية تتيح عزل العمليات غير ذات الصلة عن بعضها البعض. يُسمح فقط للمكونات التي تعد جزءًا من TCB ببرمجة وحدات MMU هذه مباشرةً.
كان هذا النموذج أساسًا لكيفية تنفيذ الخصوصية والأمان منذ إدخال أنظمة التشغيل الشبيهة بـ Unix. ومع ذلك ، فقد أصبح هذا المطلب مشكلة نظرًا لأن TCB اليوم كبير جدًا: فهو يشمل معظم برامج تشغيل الأجهزة والحافلات ، وجدولة معقدة ، وأنظمة الملفات ، ومكدس الشبكة والبروتوكولات ، وذاكرة التخزين المؤقت ، والموزعين القابل للتنفيذ ، والمحملين ، والمآخذ. لقد أصبح من الصعب للغاية التأكد من أن كل ركن من أركان هذا النظام المعقد آمن.
تحتوي نواة Linux على أكثر من 20 مليون سطر من التعليمات البرمجية ومعدل التغييرات وإعادة الكتابة مذهل. يعد هذا النمو بمثابة مساعدة هائلة لنظام Android ونظامنا البيئي. ومع ذلك ، فإن حجم TCB الكبير يجعل من الصعب ضمان عدم وجود نقاط ضعف قابلة للاستغلال.
طور بائعو الأجهزة حلولًا ، مثل TrustZone من Arm ، والتي تسمح للمعالجات بالعمل في الوضع الآمن ووضع علامة على معاملات الذاكرة على أنها "آمنة" أو "غير آمنة". في مثل هذه الأنظمة ، يتم تخزين البيانات الحساسة في العالم الآمن ، ولا تتوفر إلا بشكل مباشر ، والذي يوفر خدمات للعالم غير الآمن عند الطلب.
القيد الرئيسي لهذا النوع من الحلول هو أن المجالات رديئة للغاية: فقط آمنة وغير آمنة. مع تقديم المزيد من حالات الاستخدام التي تتطلب عزلًا عن نظام التشغيل ، يزداد سطح الهجوم ومن المرجح أن تؤدي نقاط الضعف إلى اختراق الجهاز بأكمله.
يتمثل أحد القيود الأخرى لحلول اليوم في أنها مصممة لعالم ثابت نسبيًا يتم فيه حساب جميع موارد حالة الاستخدام وتخصيصها مسبقًا. هذه الحلول ليست جيدة بما يكفي لحالات الاستخدام الديناميكي التي يتم فيها تخصيص الموارد عند الطلب.
بالإضافة إلى ذلك ، فإن واجهات برمجة التطبيقات المستخدمة خارج نظام التشغيل Android مجزأة وتحد من قدرتنا على نشر حالات الاستخدام على نطاق Android ، بما في ذلك الأساسيات مثل Keymint و Gatekeeper.
لمعالجة هذه القيود وتمكين Android من توفير أساس قوي لحالات استخدام الجيل التالي ، يقدم Android 13 المحاكاة الافتراضية الآمنة مثل Android Virtualization Framework (AVF).
الهدف الرئيسي من AVF هو توفير بيئة تنفيذ آمنة وخاصة لحالات الاستخدام من الجيل التالي.