एंड्रॉइड वर्चुअलाइजेशन फ्रेमवर्क (एवीएफ) कोड निष्पादित करने के लिए सुरक्षित और निजी निष्पादन वातावरण प्रदान करता है। एवीएफ सुरक्षा-उन्मुख उपयोग के मामलों के लिए आदर्श है, जिनके लिए एंड्रॉइड के ऐप सैंडबॉक्स द्वारा पेश किए गए अलगाव आश्वासनों की तुलना में मजबूत, यहां तक कि औपचारिक रूप से सत्यापित, अलगाव आश्वासन की आवश्यकता होती है। एंड्रॉइड AVF को लागू करने के लिए आवश्यक सभी घटकों का एक संदर्भ कार्यान्वयन प्रदान करता है। वर्तमान में, AVF केवल ARM64 उपकरणों पर समर्थित है। चित्र 1 AVF की वास्तुकला को दर्शाता है:
यहां चित्र 1 से सबसे महत्वपूर्ण शब्दों की परिभाषाएं दी गई हैं:
- एपेक्सड और जिपफ्यूज
- होस्ट से आयातित एपेक्स और एपीके को सुरक्षित रूप से माउंट करता है।
- लेखक
- एंड्रॉइड और पीवीएम (होस्ट और गेस्ट) के बीच कई फाइलों को साझा करने की सुरक्षा के लिए एक फ्यूज फाइल सिस्टम।
- जिल्दसाज़
- अंतर-वीएम संचार का प्राथमिक साधन।
- crosvm
- एक वर्चुअल मशीन मॉनीटर जंग में लिखा हुआ है। crosvm VM मेमोरी आवंटित करता है, वर्चुअल CPU थ्रेड बनाता है, और वर्चुअल डिवाइस के बैक-एंड को लागू करता है।
- जेनेरिक कर्नेल छवि (जीकेआई)
- Google द्वारा प्रमाणित एक बूट छवि जिसमें एंड्रॉइड कॉमन कर्नेल (एसीके) स्रोत ट्री से निर्मित जीकेआई कर्नेल शामिल है और एंड्रॉइड डिवाइस के बूट विभाजन पर फ्लैश करने के लिए उपयुक्त है। अधिक जानकारी के लिए, कर्नेल अवलोकन देखें।
- सूत्र
- AVF द्वारा उपयोग की जाने वाली वर्चुअलाइजेशन तकनीक, जिसे pKVM के नाम से भी जाना जाता है। हाइपरवाइजर निष्पादित कोड की अखंडता और पीवीएम की संपत्तियों की गोपनीयता बनाए रखता है, भले ही एंड्रॉइड या किसी अन्य पीवीएम से समझौता किया गया हो।
- जावा एपीआई
- वर्चुअलाइजेशन सर्विस जावा एपीआई, जो केवल एवीएफ समर्थन वाले उपकरणों पर मौजूद हैं। ये एपीआई वैकल्पिक हैं और
thebootclasspath
का हिस्सा नहीं हैं। - माइक्रोड्रॉइड
- Google द्वारा प्रदत्त मिनी-एंड्रॉइड OS जो pVM में चलता है।
- माइक्रोड्रॉइड प्रबंधक
- पीवीएम जीवनचक्र, पीवीएम के अंदर और इंस्टेंस डिस्क का प्रबंधन करता है।
- मूल एपीआई
- एंड्रॉइड नेटिव डेवलपर्स किट (एनडीके) का एक सबसेट।
- संरक्षित कर्नेल-आधारित वर्चुअल मशीन (pKVM)
- हाइपरवाइज़र देखें.
- पीवीएम फर्मवेयर (
pvmfw
) - पहला कोड जो pVM पर चलता है,
pvmfw
पेलोड को सत्यापित करता है और प्रति-VM रहस्य प्राप्त करता है। - संरक्षित वर्चुअल मशीन (पीवीएम)
एक परस्पर अविश्वासित पृथक निष्पादन वातावरण ("मेहमान") जो मुख्य एंड्रॉइड ऑपरेटिंग सिस्टम ("होस्ट") के साथ चलता है। pVMs को pKVM द्वारा प्रबंधित किया जाता है।
मौजूदा विश्वसनीय निष्पादन वातावरण (टीईई) की तुलना में, पीवीएम एक समृद्ध वातावरण प्रदान करता है, जिसमें माइक्रोड्रॉइड नामक मिनी-एंड्रॉइड वितरण भी शामिल है। पीवीएम को गतिशील रूप से उपयोग किया जा सकता है और उनका समर्थन करने वाले सभी उपकरणों पर उपलब्ध एपीआई का एक मानक सेट प्रदान किया जा सकता है।
- वर्चुअलाइजेशन सेवा
एंड्रॉइड सेवा जो पीवीएम के जीवनचक्र का प्रबंधन करती है।
आगे क्या होगा?
- यदि आप एवीएफ की आवश्यकता को बेहतर ढंग से समझना चाहते हैं, तो एवीएफ क्यों? देखें। .
- पृथक संकलन के लिए एवीएफ का उपयोग कैसे किया जा सकता है, इसके बारे में पढ़ने के लिए उपयोग मामलों का संदर्भ लें।
- यदि आप AVF संदर्भ कार्यान्वयन के आर्किटेक्चर की अधिक गहन व्याख्या चाहते हैं, तो AVF आर्किटेक्चर देखें।
- यदि आप माइक्रोड्रॉइड के बारे में जानना चाहते हैं, तो माइक्रोड्रॉइड देखें।
- यदि आप रुचि रखते हैं कि एवीएफ सुरक्षा कैसे संभालता है, तो सुरक्षा देखें।
- वर्चुअलाइजेशन सेवा की भूमिका को समझने के लिए, वर्चुअलाइजेशन सर्विस देखें।
- एवीएफ के स्रोत कोड या व्यक्तिगत घटकों के बारे में गहन स्पष्टीकरण के लिए, एओएसपी रिपॉजिटरी देखें
एंड्रॉइड वर्चुअलाइजेशन फ्रेमवर्क (एवीएफ) कोड निष्पादित करने के लिए सुरक्षित और निजी निष्पादन वातावरण प्रदान करता है। एवीएफ सुरक्षा-उन्मुख उपयोग के मामलों के लिए आदर्श है, जिनके लिए एंड्रॉइड के ऐप सैंडबॉक्स द्वारा पेश किए गए अलगाव आश्वासनों की तुलना में मजबूत, यहां तक कि औपचारिक रूप से सत्यापित, अलगाव आश्वासन की आवश्यकता होती है। एंड्रॉइड AVF को लागू करने के लिए आवश्यक सभी घटकों का एक संदर्भ कार्यान्वयन प्रदान करता है। वर्तमान में, AVF केवल ARM64 उपकरणों पर समर्थित है। चित्र 1 AVF की वास्तुकला को दर्शाता है:
यहां चित्र 1 से सबसे महत्वपूर्ण शब्दों की परिभाषाएं दी गई हैं:
- एपेक्सड और जिपफ्यूज
- होस्ट से आयातित एपेक्स और एपीके को सुरक्षित रूप से माउंट करता है।
- लेखक
- एंड्रॉइड और पीवीएम (होस्ट और गेस्ट) के बीच कई फाइलों को साझा करने की सुरक्षा के लिए एक फ्यूज फाइल सिस्टम।
- जिल्दसाज़
- अंतर-वीएम संचार का प्राथमिक साधन।
- crosvm
- एक वर्चुअल मशीन मॉनीटर जंग में लिखा हुआ है। crosvm VM मेमोरी आवंटित करता है, वर्चुअल CPU थ्रेड बनाता है, और वर्चुअल डिवाइस के बैक-एंड को लागू करता है।
- जेनेरिक कर्नेल छवि (जीकेआई)
- Google द्वारा प्रमाणित एक बूट छवि जिसमें एंड्रॉइड कॉमन कर्नेल (एसीके) स्रोत ट्री से निर्मित जीकेआई कर्नेल शामिल है और एंड्रॉइड डिवाइस के बूट विभाजन पर फ्लैश करने के लिए उपयुक्त है। अधिक जानकारी के लिए, कर्नेल अवलोकन देखें।
- सूत्र
- AVF द्वारा उपयोग की जाने वाली वर्चुअलाइजेशन तकनीक, जिसे pKVM के नाम से भी जाना जाता है। हाइपरवाइजर निष्पादित कोड की अखंडता और पीवीएम की संपत्तियों की गोपनीयता बनाए रखता है, भले ही एंड्रॉइड या किसी अन्य पीवीएम से समझौता किया गया हो।
- जावा एपीआई
- वर्चुअलाइजेशन सर्विस जावा एपीआई, जो केवल एवीएफ समर्थन वाले उपकरणों पर मौजूद हैं। ये एपीआई वैकल्पिक हैं और
thebootclasspath
का हिस्सा नहीं हैं। - माइक्रोड्रॉइड
- Google द्वारा प्रदत्त मिनी-एंड्रॉइड OS जो pVM में चलता है।
- माइक्रोड्रॉइड प्रबंधक
- पीवीएम जीवनचक्र, पीवीएम के अंदर और इंस्टेंस डिस्क का प्रबंधन करता है।
- मूल एपीआई
- एंड्रॉइड नेटिव डेवलपर्स किट (एनडीके) का एक सबसेट।
- संरक्षित कर्नेल-आधारित वर्चुअल मशीन (pKVM)
- हाइपरवाइज़र देखें.
- पीवीएम फर्मवेयर (
pvmfw
) - पहला कोड जो pVM पर चलता है,
pvmfw
पेलोड को सत्यापित करता है और प्रति-VM रहस्य प्राप्त करता है। - संरक्षित वर्चुअल मशीन (पीवीएम)
एक परस्पर अविश्वासित पृथक निष्पादन वातावरण ("मेहमान") जो मुख्य एंड्रॉइड ऑपरेटिंग सिस्टम ("होस्ट") के साथ चलता है। pVMs को pKVM द्वारा प्रबंधित किया जाता है।
मौजूदा विश्वसनीय निष्पादन वातावरण (टीईई) की तुलना में, पीवीएम एक समृद्ध वातावरण प्रदान करता है, जिसमें माइक्रोड्रॉइड नामक मिनी-एंड्रॉइड वितरण भी शामिल है। पीवीएम को गतिशील रूप से उपयोग किया जा सकता है और उनका समर्थन करने वाले सभी उपकरणों पर उपलब्ध एपीआई का एक मानक सेट प्रदान किया जा सकता है।
- वर्चुअलाइजेशन सेवा
एंड्रॉइड सेवा जो पीवीएम के जीवनचक्र का प्रबंधन करती है।
आगे क्या होगा?
- यदि आप एवीएफ की आवश्यकता को बेहतर ढंग से समझना चाहते हैं, तो एवीएफ क्यों? देखें। .
- पृथक संकलन के लिए एवीएफ का उपयोग कैसे किया जा सकता है, इसके बारे में पढ़ने के लिए उपयोग मामलों का संदर्भ लें।
- यदि आप AVF संदर्भ कार्यान्वयन के आर्किटेक्चर की अधिक गहन व्याख्या चाहते हैं, तो AVF आर्किटेक्चर देखें।
- यदि आप माइक्रोड्रॉइड के बारे में जानना चाहते हैं, तो माइक्रोड्रॉइड देखें।
- यदि आप रुचि रखते हैं कि एवीएफ सुरक्षा कैसे संभालता है, तो सुरक्षा देखें।
- वर्चुअलाइजेशन सेवा की भूमिका को समझने के लिए, वर्चुअलाइजेशन सर्विस देखें।
- एवीएफ के स्रोत कोड या व्यक्तिगत घटकों के बारे में गहन स्पष्टीकरण के लिए, एओएसपी रिपॉजिटरी देखें