Dalvik Virtual Machine In Hindi




Dalvik Virtual Machine In Hindi

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

आइए स्रोत फ़ाइल से संकलन और पैकेजिंग प्रक्रिया देखें -

javac टूल जावा स्रोत फ़ाइल को क्लास फ़ाइल में संकलित करता है.

Dx टूल आपके एप्लिकेशन की सभी क्लास फ़ाइलें लेता है और एक एकल .dex फ़ाइल बनाता है. यह एक प्लेटफ़ॉर्म-विशिष्ट उपकरण है.

एंड्रॉइड एसेट पैकेजिंग टूल (aapt) पैकेजिंग प्रक्रिया को संभालता है.

Virtual Machine

सबसे पहले यह समझते हैं कि वर्चुअल मशीन क्या है? यह मूल रूप से एक भौतिक कंप्यूटर का सॉफ्टवेयर कार्यान्वयन है. यह कार्यान्वयन एक वास्तविक भौतिक कंप्यूटर की तरह काम करता है. यहां तक कि यह भौतिक कंप्यूटर की तरह ही प्रोग्रामों को संकलित और चलाता है. इसे एक एम्यूलेटर की तरह समझा जा सकता है. वर्चुअल मशीनों के साथ भी कुछ समस्याएँ हैं. एक तो यह कि भौतिक कंप्यूटर की तुलना में यह कम कुशल है. एक अन्य मुद्दा इसका प्रदर्शन है, जो तब अस्थिर होता है जब कई वर्चुअल मशीनें एक ही मशीन पर एक साथ काम कर रही हों.

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

डाल्विक वर्चुअल मशीन की भूमिका

Android में DVM की भूमिका में शामिल हैं:

मेमोरी, बैटरी जीवन और प्रदर्शन के लिए वर्चुअल मशीन को अनुकूलित करना

डेल्विक वीएम पर चलने वाले डेक्स कंपाइलर के माध्यम से क्लास फ़ाइलों को .dex फ़ाइल में परिवर्तित करना.

एकाधिक क्लास फ़ाइलों को डेक्स फ़ाइलों में परिवर्तित करना.

डेक्स कंपाइलर क्लास फ़ाइल को .dex फ़ाइल में बदलने में मदद करता है, निम्न छवि दिखाती है कि यह कैसे बहती है:

सबसे पहले .java फ़ाइल को Java कंपाइलर की सहायता से .class फ़ाइल में परिवर्तित किया जाता है.

अगली .class फ़ाइल Dec कंपाइलर का उपयोग करके .dex फ़ाइल में परिवर्तित हो जाती है.

फिर अंततः पैकेजिंग प्रक्रिया को एंड्रॉइड एसेट्स पैकेजिंग (aapt) टूल द्वारा नियंत्रित किया जाता है.

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

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

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

आवेदन

जैसा कि ऊपर बताया गया है, एंड्रॉइड के लिए Google द्वारा एक नई वर्चुअल मशीन विकसित की गई थी. यह ऑपरेंड को स्टोर करने के लिए सीपीयू के रजिस्टरों का उपयोग करता है. इसलिए निर्देशों को दबाने और पॉप करने की कोई आवश्यकता नहीं है. इसलिए निष्पादन तेज हो रहा है. निर्देश वर्चुअल रजिस्टरों पर काम करते हैं, ये होस्ट डिवाइस में वर्चुअल रजिस्टर मेमोरी पोजीशन होते हैं. रजिस्टर-आधारित मॉडल अनुकूलन और कम मेमोरी पर चलने में अच्छे हैं. वे सामान्य उप-अभिव्यक्ति परिणामों को संग्रहीत कर सकते हैं जिनका भविष्य में फिर से उपयोग किया जा सकता है. स्टैक-आधारित मॉडल में यह बिल्कुल भी संभव नहीं है. डाल्विक वर्चुअल मशीन अपने स्वयं के बाइट-कोड का उपयोग करती है और ".dex" (डालविक निष्पादन योग्य फ़ाइल) फ़ाइल चलाती है.

लाभ

DVM केवल एंड्रॉइड ऑपरेटिंग सिस्टम को सपोर्ट करता है.

डीवीएम में निष्पादन योग्य एपीके है.

निष्पादन तेज है.

Android 2.2 SDK से डेल्विक का अपना JIT (जस्ट इन टाइम) कंपाइलर है.

डीवीएम को इस तरह से डिज़ाइन किया गया है कि एक डिवाइस वर्चुअल मशीन के कई इंस्टेंस को प्रभावी ढंग से चला सके.

एप्लिकेशन को उनके स्वयं के उदाहरण दिए गए हैं.

नुकसान

DVM केवल Android ऑपरेटिंग सिस्टम को सपोर्ट करता है.

डीवीएम के लिए बहुत कम री-टूल्स उपलब्ध हैं.

समान उच्च-स्तरीय कोड को लागू करने के लिए रजिस्टर मशीनों की तुलना में अधिक निर्देशों की आवश्यकता होती है.

डेक्स के कारण ऐप इंस्टालेशन में अधिक समय लगता है.

अधिक आंतरिक भंडारण की आवश्यकता है.

एंड्रॉइड डेल्विक वर्चुअल मशीन के बारे में

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

इसी कारण से, एंड्रॉइड डेलविक वर्चुअल मशीन अस्तित्व में आई. वर्चुअल मशीन एक वास्तविक भौतिक डिवाइस का एक सॉफ्टवेयर प्रतिनिधित्व है. इसका तात्पर्य यह है कि आपके पास कोई भौतिक उपकरण नहीं है बल्कि आपके सिस्टम में एक मॉडल है. यह प्रतिनिधित्व काफी हद तक उसी तरह काम करता है जैसे कोई वास्तविक भौतिक उपकरण काम करेगा. डेल्विक वर्चुअल मशीन को कम-शक्ति वाले उपकरणों पर बेहतर ढंग से काम करने के लिए कॉन्फ़िगर किया गया है. डेल्विक वर्चुअल मशीन कम-शक्ति वाले हैंडहेल्ड उपकरणों के लिए उच्च-प्रदर्शन सुविधाएँ, बेहतर मेमोरी प्रबंधन और बैटरी जीवन प्रदान करती है. इसे विशेष रूप से एंड्रॉइड डिवाइसों के लिए विकसित किया गया था और इसने कई ऐप्स को वर्चुअल मशीन पर निष्पादित करने की अनुमति दी थी.

सारांश

अंत में इस लेख में हमने डाल्विक वर्चुअल मशीन के बारे में पढ़ा. हमने शुरुआत की कि वर्चुअल मशीन क्या है, फिर देखा कि एंड्रॉइड में डेल्विक वीएम क्या है और यह क्या करता है. फिर हमने देखा कि रूपांतरण का प्रवाह क्या होता है. अंत में, हमने Android DVM की तुलना Android रनटाइम से की. आशा है आपको लेख अच्छा लगा होगा. नवीनतम तकनीकों पर अधिक लेख प्राप्त करने के लिए Google पर हमें रेट करें.