डिवाइस ट्री ओवरले

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

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

डिवाइस ट्री ओवरले (DTO) डिवाइस ट्री पर सेंट्रल डिवाइस ट्री ब्लॉब (DTB) को ओवरलेड करने में सक्षम बनाता है। डीटीओ का उपयोग करने वाला बूटलोडर सिस्टम-ऑन-चिप (एसओसी) डीटी को बनाए रख सकता है और डिवाइस-विशिष्ट डीटी को गतिशील रूप से ओवरले कर सकता है, पेड़ में नोड्स जोड़ सकता है और मौजूदा पेड़ में गुणों में बदलाव कर सकता है।

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

Android 9 रिलीज़ में अपडेट

एंड्रॉइड 9 में, बूटलोडर को यूनिफाइड डिवाइस ट्री ब्लॉब को कर्नेल में पास करने से पहले डिवाइस ट्री ओवरले में परिभाषित गुणों को संशोधित नहीं करना चाहिए।

डिवाइस ट्री लोड हो रहा है

बूटलोडर में डिवाइस ट्री को लोड करने में बिल्डिंग, पार्टीशन और रनिंग शामिल है।

चित्रा 1. बूटलोडर में डिवाइस ट्री लोड करने के लिए विशिष्ट कार्यान्वयन।
  1. बनाने के लिए:
    • डिवाइस ट्री सोर्स ( .dts ) को डिवाइस ट्री ब्लॉब ( .dtb ) में संकलित करने के लिए डिवाइस ट्री कंपाइलर ( dtc ) का उपयोग करें, जिसे फ़्लैटेड डिवाइस ट्री के रूप में स्वरूपित किया गया है।
    • .dtb फ़ाइल को बूटलोडर रनटाइम-सुलभ स्थान (नीचे विस्तृत) में फ्लैश करें।
  2. विभाजन के लिए, .dtb डालने के लिए फ्लैश मेमोरी में बूटलोडर रनटाइम-सुलभ और विश्वसनीय स्थान निर्धारित करें। उदाहरण स्थान:
    बूट विभाजन
    चित्र 2. image.gz में जोड़कर .dtb को बूट पार्टीशन में रखें और image.gz में " kernel " के रूप में mkbootimg
    अद्वितीय विभाजन
    चित्र 3. .dtb को एक अद्वितीय विभाजन (उदा. dtb विभाजन) में रखें।
  3. चलाने के लिए:
    • मेमोरी में स्टोरेज से .dtb लोड करें।
    • लोडेड डीटी का मेमोरी एड्रेस दिया गया कर्नेल प्रारंभ करें।

शब्दावली

यह खंड निम्नलिखित डिवाइस ट्री शब्दों का उपयोग करता है:

डीटी डिवाइस ट्री
डीटीबी डिवाइस ट्री ब्लॉब
डीटीबीओ ओवरले के लिए डिवाइस ट्री ब्लॉब
डीटीसी डिवाइस ट्री कंपाइलर
डीटीओ डिवाइस ट्री ओवरले
डीटीएस डिवाइस ट्री स्रोत
एफडीटी चपटा डिवाइस ट्री, एक .dtb ब्लॉब फ़ाइल में निहित एक बाइनरी प्रारूप