Google is committed to advancing racial equity for Black communities. See how.
इस पेज का अनुवाद Cloud Translation API से किया गया है.
Switch to English

Android आर्किटेक्चर

एंड्रॉइड सिस्टम आर्किटेक्चर में निम्नलिखित घटक शामिल हैं:

Android प्रणाली वास्तुकला का अवलोकन
चित्र 1. एंड्रॉइड सिस्टम आर्किटेक्चर
  • आवेदन की रूपरेखा । एप्लिकेशन फ्रेमवर्क का उपयोग एप्लिकेशन डेवलपर्स द्वारा सबसे अधिक बार किया जाता है। एक हार्डवेयर डेवलपर के रूप में, आपको डेवलपर एपीआई के बारे में पता होना चाहिए क्योंकि सीधे अंतर्निहित एचएएल इंटरफेस में कई नक्शे हैं और ड्राइवरों को लागू करने के बारे में उपयोगी जानकारी प्रदान कर सकते हैं।
  • बाइंडर आई.पी.सी. बाइंडर इंटर-प्रोसेस कम्युनिकेशन (IPC) तंत्र एप्लिकेशन फ्रेमवर्क को प्रक्रिया सीमाओं को पार करने और एंड्रॉइड सिस्टम सर्विसेज कोड में कॉल करने की अनुमति देता है। यह उच्च स्तरीय फ्रेमवर्क एपीआई को एंड्रॉइड सिस्टम सेवाओं के साथ बातचीत करने में सक्षम बनाता है। एप्लिकेशन फ्रेमवर्क स्तर पर, यह संचार डेवलपर से छिपा हुआ है और चीजें "बस काम" के लिए दिखाई देती हैं।
  • सिस्टम सेवाएं । सिस्टम सेवाएं मॉड्यूलर, केंद्रित घटक जैसे विंडो मैनेजर, खोज सेवा या अधिसूचना प्रबंधक हैं। एप्लिकेशन फ्रेमवर्क एपीआई द्वारा उजागर की गई कार्यक्षमता अंतर्निहित हार्डवेयर तक पहुंचने के लिए सिस्टम सेवाओं के साथ संचार करती है। एंड्रॉइड में सेवाओं के दो समूह शामिल हैं: सिस्टम (जैसे विंडो प्रबंधक और अधिसूचना प्रबंधक) और मीडिया ( मीडिया चलाने और रिकॉर्डिंग में शामिल सेवाएं)।
  • हार्डवेयर अमूर्त परत (HAL) । एचएएल हार्डवेयर विक्रेताओं को लागू करने के लिए एक मानक इंटरफ़ेस को परिभाषित करता है, जो एंड्रॉइड को निचले स्तर के ड्राइवर कार्यान्वयन के बारे में अज्ञेय बनाता है। एचएएल का उपयोग करने से आप उच्च स्तरीय प्रणाली को प्रभावित या संशोधित किए बिना कार्यक्षमता को लागू कर सकते हैं। एचएएल कार्यान्वयन मॉड्यूल में पैक किए जाते हैं और उचित समय पर एंड्रॉइड सिस्टम द्वारा लोड किए जाते हैं। विवरण के लिए, हार्डवेयर एब्स्ट्रक्शन लेयर (HAL) देखें
  • लिनक्स कर्नेल । अपने डिवाइस ड्राइवरों को विकसित करना एक विशिष्ट लिनक्स डिवाइस ड्राइवर को विकसित करने के समान है। एंड्रॉइड कुछ विशेष परिवर्धन के साथ लिनक्स कर्नेल के एक संस्करण का उपयोग करता है जैसे कि लो मेमोरी किलर (एक मेमोरी मैनेजमेंट सिस्टम जो मेमोरी को संरक्षित करने में अधिक आक्रामक है), वेक लॉक (एक PowerManager सिस्टम सेवा), बाइंडर आईपीसी ड्राइवर, और अन्य महत्वपूर्ण हैं एक मोबाइल एम्बेडेड प्लेटफ़ॉर्म के लिए। ये जोड़ मुख्य रूप से सिस्टम की कार्यक्षमता के लिए हैं और ड्राइवर के विकास को प्रभावित नहीं करते हैं। आप कर्नेल के किसी भी संस्करण का उपयोग कर सकते हैं जब तक कि यह आवश्यक सुविधाओं (जैसे बांधने की मशीन चालक) का समर्थन करता है। हालांकि, हम एंड्रॉइड कर्नेल के नवीनतम संस्करण का उपयोग करने की सलाह देते हैं। विवरण के लिए, बिल्डिंग कर्नेल देखें।

HAL इंटरफ़ेस परिभाषा भाषा (HIDL)

एंड्रॉइड 8.0 ने एंड्रॉइड के नए संस्करण में उपकरणों को अपडेट करने के लिए निर्माताओं के लिए इसे आसान, तेज और कम खर्चीला बनाने के लिए एंड्रॉइड ओएस फ्रेमवर्क ( ट्रेबल के रूप में जाना जाता है) में फिर से आर्किटेक्चर किया। इस नई वास्तुकला में, HAL इंटरफ़ेस परिभाषा भाषा (HIDL, जिसका उच्चारण "Hide-l" है) एक HAL और उसके उपयोगकर्ताओं के बीच इंटरफ़ेस को निर्दिष्ट करता है, जिससे HAL के पुनर्निर्माण के बिना Android फ्रेमवर्क को बदला जा सकता है।

HIDL एक नए विक्रेता इंटरफ़ेस के माध्यम से एंड्रॉइड OS फ्रेमवर्क से विक्रेता कार्यान्वयन (सिलिकॉन निर्माताओं द्वारा लिखे गए डिवाइस-विशिष्ट, निचले स्तर के सॉफ़्टवेयर) को अलग करता है। विक्रेताओं या एसओसी निर्माताओं ने एक बार एचएएल का निर्माण किया और उन्हें डिवाइस पर /vendor विभाजन में रखा; फ्रेमवर्क, अपने स्वयं के विभाजन में, फिर HALs को पुन: स्थापित किए बिना ओवर-द-एयर (OTA) अपडेट के साथ बदला जा सकता है।

विरासत एंड्रॉइड आर्किटेक्चर और वर्तमान, HIDL- आधारित आर्किटेक्चर के बीच अंतर विक्रेता इंटरफ़ेस के उपयोग में है:

  • एंड्रॉइड 7.x और पूर्व में, कोई औपचारिक विक्रेता इंटरफ़ेस मौजूद नहीं है, इसलिए डिवाइस निर्माताओं को डिवाइस को एंड्रॉइड के नए संस्करण में स्थानांतरित करने के लिए एंड्रॉइड कोड के बड़े हिस्से को अपडेट करना होगा:

    चित्रा 2. विरासत Android अद्यतन वातावरण
  • एंड्रॉइड 8.0 और उच्चतर में, एक नया स्थिर विक्रेता इंटरफ़ेस एंड्रॉइड के हार्डवेयर-विशिष्ट भागों तक पहुंच प्रदान करता है, इसलिए डिवाइस निर्माता केवल एंड्रॉइड ओएस फ्रेमवर्क को अपडेट करके नए एंड्रॉइड रिलीज़ प्रदान कर सकते हैं - सिलिकॉन निर्माताओं से आवश्यक अतिरिक्त काम के बिना:

    चित्रा 3. वर्तमान Android अद्यतन वातावरण

एंड्रॉइड 8.0 और उच्चतर के साथ लॉन्च होने वाले सभी नए डिवाइस नए आर्किटेक्चर का लाभ उठा सकते हैं। विक्रेता कार्यान्वयन की आगे की संगतता सुनिश्चित करने के लिए, विक्रेता इंटरफ़ेस को वेंडर टेस्ट सूट (वीटीएस) द्वारा मान्य किया जाता है, जो संगतता परीक्षण सूट (सीटीएस) के अनुरूप है। आप वीटीएस का उपयोग विरासत और वर्तमान एंड्रॉइड आर्किटेक्चर दोनों में एचएएल और ओएस कर्नेल परीक्षण को स्वचालित करने के लिए कर सकते हैं।

वास्तुकला के संसाधन

Android आर्किटेक्चर के विवरण के लिए, निम्न अनुभाग देखें:

  • एचएएल प्रकार । वर्णित बांधने की मशीन, passthrough, एक ही प्रक्रिया (सपा), और विरासत HALs।
  • HIDL (सामान्य) । एक एचएएल और उसके उपयोगकर्ताओं के बीच इंटरफेस के बारे में सामान्य जानकारी शामिल है।
  • HIDL (C ++) । HIDL इंटरफेस के C ++ कार्यान्वयन बनाने के लिए विवरण शामिल हैं।
  • HIDL (जावा) । इसमें HIDL इंटरफेस के लिए जावा फ्रंटेंड के बारे में विवरण है।
  • विन्यास HAL । Android ढांचे को कॉन्फ़िगर करने के लिए उपयोग की जाने वाली रीड-ओनली कॉन्फ़िगरेशन आइटम तक पहुंचने के लिए एपीआई का वर्णन करता है।
  • डिवाइस ट्री ओवरले । Android में डिवाइस ट्री ओवरले (DTO) का उपयोग करने पर विवरण प्रदान करता है।
  • वेंडर नेटिव डेवलपमेंट किट (VNDK) । विक्रेता HAL को लागू करने के लिए विक्रेता-अनन्य पुस्तकालयों के सेट का वर्णन करता है।
  • वेंडर इंटरफ़ेस ऑब्जेक्ट (VINTF) । उन वस्तुओं का वर्णन करता है जो एक उपकरण के बारे में प्रासंगिक जानकारी एकत्र करते हैं और एक क्वेरी एपीआई के माध्यम से उस जानकारी को उपलब्ध करते हैं।
  • Android 8.0 के लिए SELinux । विवरण SELinux परिवर्तन और अनुकूलन।

इस साइट पर संसाधनों के अलावा, ट्रेबल टीम के सदस्यों ने ट्रेबल: फास्ट सॉफ्टवेयर अपडेट को ग्लोबली डिस्ट्रीब्यूटेड स्टेकहोल्डर्स के एक एक्टिव सॉफ्टवेयर इकोसिस्टम में एक संतुलन बनाकर प्रकाशित किया। एसीएम सदस्यों के लिए कागज मुफ़्त है और गैर-सदस्य सार खरीद या पढ़ सकते हैं।