प्रौद्योगिकी की दुनिया में, नई शब्दावली औरसंक्षिप्त रूप से नया कुछ भी नहीं है, और कभी-कभी, यहां तक कि मौजूदा सॉफ़्टवेयर के हर नए रिलीज़ के साथ, आपको एक नया शब्द दिखाई दे सकता है जिसे हर कोई उपयोग करना और समझना समझता है। शुरुआती लोगों और यहां तक कि बहुत से आकस्मिक उपयोगकर्ताओं के लिए समस्या यह है कि वे न तो पूरी तरह से समझते हैं कि नए अर्थ का अर्थ क्या है, और न ही वे आधिकारिक स्रोतों से अपने बारे में आसानी से पता लगा सकते हैं, मुख्य रूप से इस तथ्य के कारण कि डेवलपर्स उत्पन्न होते हैं ' कई ऐसी शब्दावली और उनके तकनीकी विवरणों को समझाने के लिए बहुत उत्सुक हैं। सबसे अच्छी तरह से, आपको एक आधिकारिक लिंक की ओर इशारा किया जाएगा जो एक स्पष्टीकरण प्रदान करता है, लेकिन ऐसे तकनीकी शब्दों में कि यह गैर-तकनीकी के लिए बहुत बेकार है।
AddictiveTips में हमने हमेशा गर्व किया हैतकनीकी अवधारणाओं को नीचे गिराया जा रहा है और उन शब्दों में उत्तर प्रदान कर रहा है जो आकस्मिक उपयोगकर्ता और तकनीकी शुरुआत के लिए सहमत हैं। इसलिए, जब Google ने Android 4.4 किटकैट के साथ ART शुरू करने का फैसला किया, तो हमने इसे अपने पाठकों को नए रनटाइम वातावरण में पेश करने के अवसर के रूप में देखा और सभी को यह समझने में मदद की कि यह सब क्या है और यह Dalvik वर्चुअल मशीन से कैसे अलग है? एआरटी को बदलने के लिए बनाया जा रहा है।

एक रनटाइम पर्यावरण क्या है?
इससे पहले कि हम वास्तविक प्रश्न का उत्तर दें,हमें यह समझने की आवश्यकता है कि वास्तव में एक रनटाइम वातावरण क्या है। सरलतम शब्दों में कहें, तो रनटाइम में सॉफ़्टवेयर निर्देश शामिल होते हैं जो आपके प्रोग्राम को चलाने के दौरान निष्पादित होते हैं, भले ही वे अनिवार्य रूप से सॉफ़्टवेयर के उस टुकड़े के कोड का हिस्सा न हों। ये निर्देश मूल रूप से सॉफ़्टवेयर के अपने कोड को उस कोड में अनुवादित करते हैं जो कंप्यूटर चलाने में सक्षम है। इसलिए, सभी कंप्यूटर भाषाओं को किसी प्रकार के रनटाइम वातावरण की आवश्यकता होती है जो उस भाषा में लिखे गए कोड को ठीक से निष्पादित कर सके।
एंड्रॉइड अपने रूप में एक वर्चुअल मशीन का उपयोग करता हैAndroid एप्लिकेशन बनाने वाली एपीके फ़ाइलों को चलाने के लिए रनटाइम वातावरण। वर्चुअल मशीन का उपयोग करने का लाभ दो गुना है - सबसे पहले, ऐप कोड कोर ऑपरेटिंग सिस्टम से अलग है, यह सुनिश्चित करता है कि कुछ गलत होना चाहिए, यह एक पृथक वातावरण में निहित है और प्राथमिक ओएस को प्रभावित नहीं करता है। और दूसरी बात, यह क्रॉस-अनुकूलता के लिए अनुमति देता है, जिसका अर्थ है कि अगर कोई ऐप किसी अन्य प्लेटफ़ॉर्म पर संकलित है (जैसे कि पीसी, जैसा कि आमतौर पर मोबाइल ऐप विकसित करने के मामले में होता है), तो उन्हें अभी भी वर्चुअल मशीन का उपयोग करके मोबाइल प्लेटफ़ॉर्म पर निष्पादित किया जा सकता है ।
Android के लिए, वर्चुअल मशीन-आधारित रनटाइमअब तक उपयोग किए जाने वाले environemnt को Dalvik वर्चुअल मशीन के रूप में जाना जाता है, जो मुझे यकीन है कि जो भी कभी भी OS के विवरण में खोदता है, वह परिचित से अधिक है।
वर्चुअल मशीन का उपयोग क्यों करें?
यह वास्तव में वह बिंदु है जिसे हमने ऊपर से छुआ है। वर्चुअल मशीनें धीमी होती हैं, इस बात से कोई इनकार नहीं करता है, लेकिन वे वास्तव में कुछ फायदे रखते हैं जो उन्हें एक पसंदीदा विकल्प बनाते हैं।
- वर्चुअल मशीनें एक अलग वातावरण की आपूर्ति करती हैंकोड निष्पादन के लिए। इसलिए, भले ही किसी ऐप में कोई दुर्भावनापूर्ण टुकड़ा कोड होता है जो कोर OS को नुकसान पहुंचा सकता है, यह सीधे सिस्टम फ़ाइलों को प्रभावित नहीं करेगा, और इस प्रकार कोर ओएस को दूषित होने से बचाए रखा जाएगा। बड़े पैमाने पर लाभ ऑपरेटिंग सिस्टम के लिए अधिक स्थिरता और विश्वसनीयता है।
- ऐप एपीके जिन्हें प्ले स्टोर के माध्यम से आपूर्ति की जाती है(या उस विषय के लिए कोई अन्य स्रोत) अनकहे गए निर्देश हैं, जो डेवलपर्स निष्पादन से पहले संकलित करने और डिवाइस पर चलाने के लिए वर्चुअल मशीन पर भरोसा करते हैं। यह अधिक अनुकूलता प्रदान करता है; यदि डेवलपर को पहले से संकलित कोड प्रदान करना था और इसे स्नैपड्रैगन-आधारित प्रोसेसर के लिए संकलित किया गया था, तो यह उदाहरण के लिए, टेग्रा चिप पर सही ढंग से नहीं चल सकता है। इसलिए, यह ऑन-द-डिवाइस संकलन इस समस्या को हल करता है।
तो, क्या है Dalvik, और क्या गलत है इसके साथ?
यह सवाल पूछना है, क्या यह नहीं है? डाल्विक तब से है जब से एंड्रॉइड ने 2007 में वापस शुरू किया था, और तब से यह बहुत ज्यादा नहीं बदला है, इसके अलावा, एंड्रॉइड 2.2 फ्रायो में पेश किए गए जस्ट-इन-टाइम (जेआईटी) संकलन दृष्टिकोण दृष्टिकोण के अलावा, जो मूल रूप से सही ऐप को संकलित करते हैं जब वे होते हैं लॉन्च, या जब उपयोगकर्ता आवश्यक निर्देशों की आपूर्ति करता है। यह उपयोगी है, साथ ही साथ पिछले पारंपरिक दुभाषिया दृष्टिकोण में सुधार हुआ है जो कोड लाइन को लाइन के रूप में संकलित करता है और इसे चलाता है, लेकिन जब पहली बार ऐप लॉन्च किया जा रहा होता है तो नकारात्मक पक्ष बहुत बड़ा होता है।
ऐसा इसलिए है क्योंकि सिस्टम को एक साथ खींचने की जरूरत हैसभी आवश्यक फाइलें, एप्लिकेशन को संकलित करें और इसे रैम पर लोड करें। जब तक संकलित ऐप रैम के भीतर रहता है, तब तक यह जवाब देने के लिए जारी रहेगा, लेकिन जब आप अधिक एप्लिकेशन लोड करते हैं और रैम बाहर निकल जाता है, तो पहले वाला अनलोड हो जाता है और इसलिए, बाद में लॉन्च होने पर, पूरी प्रक्रिया शुरू हो जाती है। दृष्टिकोण कागज पर समझ में आता है, और वास्तव में, अब तक मंच के लिए ठीक काम कर रहा है। हालांकि, सीमित रैम वाले पुराने उपकरण सबसे अधिक पीड़ित होते हैं, क्योंकि लोडिंग / अनलोडिंग चक्र अधिक बार जारी रहता है, और इसलिए, समग्र जवाबदेही के मामले में सिस्टम धीमा महसूस करता है। यहीं से नई वर्चुअल मशीन, ART आती है।
एआरटी क्या है और यह कैसे चीजों को बेहतर बनाता है?
एआरटी, या एंड्रॉइड रनटाइम (सुंदर लंगड़ा नाम, हाँ,हम जानते हैं) Google एक नई प्रायोगिक आभासी मशीन है जिसे Google ने एंड्रॉइड 4.4 किटकैट के साथ एक डेवलपर विकल्प के रूप में पेश किया है (साथ ही अभी भी डिवेलप एक सेट के रूप में डिफ़ॉल्ट है)। ART और Dalvik के बीच प्राथमिक अंतर यह संकलन दृष्टिकोण है कि इन दोनों का उपयोग - ART, Dalvik के JIT के विपरीत एक नई Ahead-and-Time (AOT) अवधारणा को नियोजित करता है, जो मूल रूप से लॉन्च होने से पहले ही ऐप्स को संकलित करता है। इसका मतलब यह है कि पहली बार स्थापित होने में अधिक समय लगेगा, और ऐप्स आंतरिक संग्रहण पर अधिक स्थान ले लेंगे, लेकिन साथ ही, चूंकि ऐप इंस्टॉल होते ही पूरी तरह से संकलित हो जाएगा, लॉन्च समय बहुत तेज़ होगा। इसी तरह, चूंकि संकलन भाग को स्थापित करने के समय सिर्फ एक बार ध्यान रखा जाता है, प्रोसेसर कर कम होता है, जिसके परिणामस्वरूप बेहतर बैटरी जीवन और समग्र प्रदर्शन होता है।
दलविक बनाम। एआरटी - तुलना
आगे बढ़ने से पहले दोनों आभासी मशीनों की एक त्वरित तुलना करें।
Dalvik | एआरटी |
जस्ट-इन-टाइम (जेआईटी) दृष्टिकोण का उपयोग करता है, जिसके परिणामस्वरूप कम भंडारण स्थान की खपत होती है, लेकिन लंबे समय तक ऐप लोड होता है | अहेड-ऑफ-टाइम (एओटी) दृष्टिकोण का उपयोग करता है, जो एप्स को संकलित करता है जब वे स्थापित होते हैं, जिसके परिणामस्वरूप तेज लोड समय और कम प्रोसेसर उपयोग होता है |
कैश समय के साथ बनता है, इसलिए बूट समय तेज होता है | कैश पहले बूट में बनाया गया है, इसलिए रिबूटिंग डिवाइस में काफी लंबा समय लगता है |
कम आंतरिक भंडारण उपकरणों के लिए बेहतर काम करता है क्योंकि अंतरिक्ष में कब्जा कम होता है | बहुत अधिक आंतरिक संग्रहण स्थान का उपभोग करता है क्योंकि यह APK के अलावा संकलित ऐप्स को संग्रहीत करता है |
स्थिर और समय परीक्षण किया है - ऐप डेवलपर्स के लिए पसंद का वीएम | अत्यधिक प्रयोगात्मक और नया है - अभी तक ऐप डेवलपर्स से बहुत अधिक समर्थन नहीं है |
आप कहते हैं कि एआर प्रायोगिक है ...
हां, और अभी, यह केवल पर उपलब्ध हैस्नैपड्रैगन चिपसेट और रनिंग एंड्रॉइड 4.4 किटकैट के साथ डिवाइस। आपके पास छिपे हुए डेवलपर विकल्पों में से डेल्विक से एआरटी में स्विच करने का विकल्प है, क्या आपको इच्छा होनी चाहिए, लेकिन सलाह दी जाती है कि आपके कुछ ऐप ठीक से काम नहीं कर सकते हैं। इसके अलावा, अगर कोई ऐप कैश पहले से ही डाल्विक के तहत बनाया गया है, तो स्विच करने के बाद पहला रिबूट आधे घंटे तक का समय ले सकता है।
Google ने मुख्य रूप से ART को उपलब्ध कराया हैडेवलपर्स के लिए किटकैट के साथ खेलने के लिए और भविष्य में एक स्थायी स्विच के लिए आधार स्थापित करने के लिए। और इसका मतलब यह नहीं है कि एआरटी आज उपयोग के लिए तैयार है। यह भविष्य में होगा, लेकिन अब, यह अंतिम उपयोगकर्ता द्वारा दैनिक उपयोग के लिए प्रायोगिक और फिट नहीं है।
एआरटी के लाभों के लिए, मिश्रित हैंरिपोर्ट। अधिकांश समीक्षकों के लिए, परीक्षण उपकरणों में 2 गीगाहर्ट्ज़ रैम के साथ क्वाड-कोर प्रोसेसर शामिल हैं, जो एआरटी से गति प्राप्त करने के लिए सही मायने में निरीक्षण करने के लिए पर्याप्त सेटअप से अधिक है। फिर भी, यादृच्छिक उपयोगकर्ता रिपोर्ट करते हैं गति में 50% से ऊपर और बैटरी जीवन में 30% से अधिक। फिर भी अन्य लोग दावा करते हैं कि यह एक प्लेसबो प्रभाव से अधिक कुछ नहीं है।
सभी निष्पक्षता में, इससे पहले कुछ भी नहीं कहा जा सकता हैजनता के लिए उपलब्ध हो जाता है और प्रयोगात्मक टैग खो देता है। इसलिए, हम बाद के लिए उस बहस को बचाएंगे। इस बिंदु पर निश्चित रूप से कहा जा सकता है कि एआरटी भविष्य है। Google iOS के सही मायने में मिलान के लिए समय संकलन से आगे जाने वाला है, यह सबसे बड़ा समकक्ष है, और ART रास्ता प्रशस्त करने वाला है। कोई बात नहीं कि नाम कितना मूर्खतापूर्ण लग सकता है या अभी कितना अधूरा है, हम एआरटी को अधिक से अधिक देखना जारी रखेंगे।
टिप्पणियाँ