تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
طبقة تجريد الأجهزة (HAL) هي نوع من طبقات التجريد التي تحتوي على
واجهة قياسية لموردي الأجهزة لتنفيذها. يتيح طبقة تجريد الأجهزة (HAL) للأجهزة
في ما يتعلّق بالمورِّدين من تنفيذ ميزات ذات مستوى أقل خاصة بالجهاز بدون التأثير أو
تعديل التعليمات البرمجية في طبقات ذات مستوى أعلى.
البنود المطلوبة
في ما يلي قائمة بتعريفات المصطلحات المستخدمة في هذا القسم من
التوثيق:
لغة تعريف واجهة Android (AIDL)
لغة شبيهة بلغة Java، يتم استخدامها لتعريف الواجهات بطريقة مستقلة عن
لغة البرمجة المستخدمة. تتيح AIDL الاتصال بين
عملاء HAL وخدمات HAL.
ثنائية HAL
HAL التي تتواصل مع العمليات الأخرى
استخدام
الاتصال بين العمليات (IPC)
الاتصالات. يتم تشغيل HALs المُدمجة في عملية منفصلة عن العميل الذي يستخدمها.
يتم تسجيل HALs المُدمجة لدى مدير الخدمة حتى يتمكن العملاء من
والوصول إلى إمكاناتها. تكون تسريبات HALs المكتوبة لنظام التشغيل Android 8 والإصدارات الأحدث
بدهاء
برنامج HAL
عملية الوصول إلى خدمة HAL.
واجهة HAL
الواجهة المشتركة التي يستخدمها كل من برنامج HAL وخدمة التواصل.
خدمة HAL
الكود الخاص بالجهاز، مثل الكود الذي ينتقل إلى
كاميرا الجهاز. يجب تنفيذ جميع HALs المطلوبة الواردة في
مصفوفة التوافق للإصدار الذي تستهدفه في قسم المورِّد.
لمزيد من المعلومات حول مصفوفات التوافق، راجع
مصفوفات التوافق:
يمكنك أيضًا إنشاء واجهة HAL جديدة أو توسيع واجهة HAL إلى
التوافق مع الإمكانات الفريدة للأجهزة.
لغة تعريف واجهة الأجهزة (HIDL)
يشير هذا المصطلح إلى لغة تُستخدم لتعريف الواجهات بطريقة مستقلة عن
لغة البرمجة المستخدمة. يتيح HIDL التواصل بين
عملاء HAL وخدمات HAL.
HAL العمليات نفسها (SP)
مجموعة محدودة من طبقات HALs الملفوفة. يتم التحكم في العضوية في المجموعة من خلال
Google. تشمل SP HALs ما يلي:
مصمم خرائط C الثابت 5 HAL
برنامج OpenGL
فولكان
android.hidl.memory@1.0 (يوفّره نظام Android، ويكون متوفّرًا دائمًا)
android.hardware.renderscript@1.0
ملفوف حول طبقة تجريد الأجهزة (HAL)
هي خدمة HAL تم إنشاؤها قبل Android 8، ولكن تم تضمينها في
برنامج تضمين AIDL أو HIDL للعمل مع نظام التشغيل Android 8 والإصدارات الأحدث.
للتعرّف على كيفية إنشاء طبقة تجريد الأجهزة (HAL) حالية أو تمديدها، يمكنك الرجوع إلى:
إلى
الواجهات الموسّعة المرفقة
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2024-07-25 (حسب التوقيت العالمي المتفَّق عليه)
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"لا يحتوي على المعلومات التي أحتاج إليها."
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"الخطوات معقدة للغاية / كثيرة جدًا."
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"المحتوى قديم."
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"ثمة مشكلة في الترجمة."
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"مشكلة في العيّنات / التعليمات البرمجية"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"غير ذلك"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"يسهُل فهم المحتوى."
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"ساعَدني المحتوى في حلّ مشكلتي."
},{
"type": "thumb-up",
"id": "otherUp",
"label":"غير ذلك"
}]
{"lastModified": "\u062a\u0627\u0631\u064a\u062e \u0627\u0644\u062a\u0639\u062f\u064a\u0644 \u0627\u0644\u0623\u062e\u064a\u0631: 2024-07-25 (\u062d\u0633\u0628 \u0627\u0644\u062a\u0648\u0642\u064a\u062a \u0627\u0644\u0639\u0627\u0644\u0645\u064a \u0627\u0644\u0645\u062a\u0641\u0651\u064e\u0642 \u0639\u0644\u064a\u0647)"}
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2024-07-25 (حسب التوقيت العالمي المتفَّق عليه)"]]