نظرة عامة على البنية

إنّ المشروع المفتوح المصدر لنظام Android (AOSP) متاح للجميع وقابل للتعديل. رمز المصدر لنظام Android. يمكن لأي شخص تنزيل AOSP وتعديله على جهازه. بروتوكول AOSP عملية تنفيذ كاملة ووظائف كاملة لنظام Android بدون خادم.

هناك مستويان من التوافق للأجهزة التي تستخدم بروتوكول AOSP: بروتوكول AOSP التوافق والتوافق مع Android. يجب أن يكون جهازًا متوافقًا مع بروتوكول AOSP الامتثال لقائمة المتطلبات الواردة في مستند تعريف التوافق (CDD) إنّ يجب أن يتوافق الجهاز المتوافق مع Android مع قائمة المتطلبات الواردة في مستند CDD. ومتطلبات برامج الموردين (VSR) والاختبارات مثل تلك الواردة في حزمة اختبار المورّد (VTS) مجموعة أدوات اختبار التوافق (CTS) لمزيد من حول التوافق مع Android، راجع برنامج التوافق مع Android.

بنية AOSP

تحتوي حزمة برامج AOSP على الطبقات التالية:

بنية تكديس برنامج AOSP.

الشكل 1. بنية تكديس برنامج AOSP.

في ما يلي قائمة بتعريفات المصطلحات المستخدمة في الشكل 1:

تطبيق Android
تطبيق تم إنشاؤه فقط باستخدام واجهة برمجة تطبيقات Android Google يُستخدم "متجر Play" على نطاق واسع للبحث عن تطبيقات Android وتنزيلها، على الرغم من وجود والعديد من البدائل الأخرى. في بعض الحالات، قد ترغب الشركة المصنِّعة للجهاز في تثبيت تطبيق Android مسبقًا لدعم الوظيفة الأساسية للجهاز. في حال حذف كنت مهتمًا بتطوير تطبيقات Android، يمكنك مراجعة developers.android.com.
تطبيق مميّز
تطبيق تم إنشاؤه باستخدام مجموعة من واجهات برمجة التطبيقات لنظام التشغيل Android وواجهة برمجة التطبيقات لنظام التشغيل Android هذه التطبيقات يجب أن تكون مثبَّتة مسبقًا كتطبيقات محمية على الجهاز.
تطبيق الشركة المصنّعة للجهاز
تطبيق تم إنشاؤه باستخدام مزيج من واجهة برمجة تطبيقات Android وواجهة برمجة تطبيقات النظام وواجهة برمجة تطبيقات الوصول إلى تنفيذ إطار عمل Android. لأنّ الشركة المصنِّعة للجهاز الوصول مباشرةً إلى واجهات برمجة التطبيقات غير المستقرة ضمن إطار عمل Android، أن يتم تثبيته مسبقًا على الجهاز ولا يمكن تحديثه إلا عندما تحديث برنامج النظام.
System API
تمثل System API واجهات برمجة تطبيقات Android المتاحة فقط للشركاء المصنّعون الأصليون للأجهزة المطلوب إدراجهم في التطبيقات المجمّعة. وتمّ وضع علامة @SystemApi على واجهات برمجة التطبيقات هذه. في رمز المصدر
واجهة برمجة تطبيقات Android
واجهة برمجة التطبيقات Android API هي واجهة برمجة التطبيقات المتاحة للجميع لتطبيق Android تابع لجهة خارجية. المطورين. لمزيد من المعلومات حول واجهة برمجة تطبيقات Android، يمكنك الرجوع إلى مرجع واجهة برمجة تطبيقات Android.
إطار عمل Android
وهي مجموعة من فئات وواجهات ورموز Java الأخرى التي تم تجميعها مسبقًا التطبيقات. يمكن للجمهور الوصول إلى أجزاء من إطار العمل من خلال استخدام واجهة برمجة تطبيقات Android. الأجزاء الأخرى من الإطار متاحة فقط للمصنّعين الأصليين للأجهزة من خلال استخدام واجهات برمجة تطبيقات النظام. جهاز Android يتم تشغيل رمز إطار العمل داخل عملية التطبيق.
خدمات النظام
خدمات النظام هي مكونات معيارية يتم التركيز عليها، مثل system_server، SurfaceFlinger وMediaService. الوظائف المعروضة من خلال واجهة برمجة تطبيقات إطار عمل Android يتصل بخدمات النظام للوصول إلى الأجهزة الأساسية.
وقت تشغيل Android (ART)
بيئة تشغيل Java توفِّرها شركة AOSP. ينفذ ART ترجمة رمز بايت التطبيق إلى تعليمات خاصة بالمعالج التي يتم تنفيذها من خلال بيئة وقت تشغيل الجهاز
طبقة تجريد الأجهزة (HAL)
HAL هو طبقة تجريدية ذات واجهة قياسية لموردي الأجهزة تنفيذها. تسمح HALs لنظام التشغيل Android بعدم التقيد بشأن برامج التشغيل ذات المستوى الأقل وعمليات التنفيذ. يتيح لك استخدام HAL تنفيذ الوظائف بدون التأثير في نظام المستوى الأعلى أو تعديله. لمزيد من المعلومات، يمكنك الاطّلاع على نظرة عامة على HAL.
برامج خفية ومكتبات أصلية

تتضمن هذه الطبقة برامج خفية أصلية على init وhealthd وlogd storaged تتفاعل هذه البرامج الخفيّة مباشرةً مع النواة أو الواجهات الأخرى ولا تعتمد على تنفيذ HAL استنادًا إلى مساحة المستخدم.

وتشمل المكتبات الأصلية في هذه الطبقة libc وliblog وlibutils libbinder، وlibselinux. وتتفاعل المكتبات الأصلية هذه مباشرة مع النواة أو الواجهات الأخرى ولا تعتمد على طبقة تجريد الأجهزة (HAL) المستندة إلى مساحة المستخدم التنفيذ.

النواة

النواة (kernel) هي الجزء المركزي من أي نظام تشغيل وتتحدث إلى الأجهزة الأساسية على الجهاز. يتم تقسيم نواة AOSP حيثما أمكن. إلى وحدات غير متوافقة مع الأجهزة ووحدات خاصة بالموردين. للحصول على وصف، بما في ذلك التعريفات ومكونات نواة AOSP، ويمكنك الرجوع إلى نظرة عامة على النواة (Kernel).

ما هي الخطوات التالية؟

  • إذا كنت مستخدمًا جديدًا لخدمة AOSP وتريد البدء في التطوير، يُرجى الرجوع إلى قسم البدء.
  • إذا أردت معرفة المزيد من المعلومات حول طبقة معيّنة من AOSP، انقر على زر في شريط التنقل الأيمن، ثم ابدأ بنظرة عامة حول هذا القسم.