हार्डवेयर ऐब्स्ट्रक्शन लेयर (एचएएल) एक तरह की ऐब्स्ट्रैक्ट लेयर है. इसमें इसे लागू करने के लिए, हार्डवेयर वेंडर के स्टैंडर्ड इंटरफ़ेस का इस्तेमाल किया जाएगा. एचएएल, हार्डवेयर की सुविधा देता है किसी भी तरह की गड़बड़ी या डिवाइस से जुड़ी, निचले लेवल की सुविधाओं को लागू करने के लिए कोड को उच्च-स्तरीय लेयर में संशोधित कर रहा है.
ज़रूरी शर्तें
इस सेक्शन में इस्तेमाल किए गए शब्दों की परिभाषाओं की सूची नीचे दी गई है दस्तावेज़:
- Android इंटरफ़ेस डेफ़िनिशन लैंग्वेज (एआईडीएल)
- जावा जैसी भाषा, जिसका इस्तेमाल इंटरफ़ेस को इस तरह से परिभाषित करने के लिए किया जाता है कि किस प्रोग्रामिंग भाषा का इस्तेमाल किया जा रहा है. एआईडीएल, एक-दूसरे से बातचीत करने की अनुमति देता है एचएएल क्लाइंट और एचएएल की सेवाएं.
- बाइंडर वाला एचएएल
- एक एचएएल जो दूसरी प्रोसेस से संपर्क करता है इसका उपयोग कर रहा है बाइंडर इंटर-प्रोसेस कम्यूनिकेशन (आईपीसी) कॉल. बाइंडराइज़्ड एचएएल, उनका इस्तेमाल करने वाले क्लाइंट से अलग प्रोसेस में चलते हैं. बाइंडर्ड एचएएल को सर्विस मैनेजर के पास रजिस्टर किया जाता है, ताकि क्लाइंट ये काम कर सकें और संसाधनों को ऐक्सेस करना. Android 8 और उसके बाद के वर्शन के लिए लिखे गए एचएएल एक-दूसरे से जुड़ी हुई हैं.
- एचएएल क्लाइंट
- एचएएल सेवा को ऐक्सेस करने की प्रोसेस.
- HAL इंटरफ़ेस
- एक जैसा इंटरफ़ेस, जिसका इस्तेमाल HAL क्लाइंट और सेवा, दोनों एक-दूसरे से बातचीत करने के लिए करते हैं.
- एचएएल सेवा
हार्डवेयर के लिए खास कोड, जैसे कि वह कोड जो आपके प्रॉडक्ट की स्टैंडर्ड वैल्यू पर ले जाता है डिवाइस का कैमरा इस्तेमाल किया है. आपको यहां दी गई सूची में मौजूद सभी ज़रूरी एचएएल को लागू करना होगा आपके वेंडर पार्टीशन में टारगेट की गई रिलीज़ के साथ काम करने वाला मैट्रिक्स. कंपैटबिलिटी मैट्रिक्स के बारे में ज़्यादा जानने के लिए, यहां देखें कंपैटबिलिटी मैट्रिक्स.
आप नया HAL इंटरफ़ेस भी बना सकते है या HAL के इंटरफ़ेस को अपने हार्डवेयर की अनूठी क्षमताओं का समर्थन करते हैं.
- हार्डवेयर इंटरफ़ेस डेफ़िनिशन लैंग्वेज (एचआईडीएल)
ऐसी भाषा जिसका इस्तेमाल इंटरफ़ेस को इस तरह से परिभाषित करने के लिए किया जाता है कि वह का इस्तेमाल किया जा रहा है. एचआईडीएल, एक-दूसरे से बातचीत करने की सुविधा देता है HAL क्लाइंट और HAL की सेवाएं.
- एक जैसी प्रोसेस (एसपी) एचएएल
रैप किए गए एचएएल का प्रतिबंधित सेट. सेट में मौजूद सदस्यता को Google. एसपी एचएएल में ये शामिल हैं:
- स्टेबल C मैपर 5 एचएएल
- OpenGL
- वल्कन
- android.hidl.memory@1.0 (Android सिस्टम से मिला, हमेशा रैप किया जाता है)
- android.hardware.renderscript@1.0
- रैप किया गया एचएएल
HAL सेवा, जिसे Android 8 से पहले बनाया गया था, लेकिन अब Android 8 और उसके बाद के वर्शन के साथ काम करने के लिए AIDL या HIDL.
आगे क्या करना है?
- एचएएल सेवा को लागू करने का तरीका जानने के लिए, यहां जाएं: एचएएल के लिए एआईडीएल.
- किसी मौजूदा एचएएल को बनाने या उसका दायरा बढ़ाने का तरीका जानने के लिए, से अटैच किए गए एक्सटेंडेड इंटरफ़ेस.