हालाँकि आपने शायद AArch64 प्रोसेसर वाले डिवाइस का उपयोग किया है, लेकिन आप नहीं जानते होंगे कि इसका क्या मतलब है। यहां वह है जो आपको जानना आवश्यक है।
बहुत सारे सीपीयू हैं आर्किटेक्चर वहाँ, सबसे बड़े लोगों के साथ 86 और हाथ. ऐसा कहने के बाद, AArch64 संभवतः आपके रडार के नीचे आ गया है। यहां तक कि काफी पढ़े-लिखे तकनीकी उत्साही लोगों ने भी इसके बारे में कभी नहीं सुना होगा, इस तथ्य के बावजूद कि यह लाखों उपकरणों में मौजूद है। खैर, बात यह है कि AArch64 इतना रहस्यमय नहीं है क्योंकि यह एक बहुत ही भ्रमित करने वाला तकनीकी शब्द है। यहां आपको AArch64 के बारे में जानने की आवश्यकता है।
AArch64 एक तरह से ARM64 है
स्रोत: आर्म
संक्षेप में, AArch64 आर्म के 64-बिट इंस्ट्रक्शन सेट आर्किटेक्चर (ISA) का आधिकारिक नाम है जिसे Armv8-A अपडेट के साथ पेश किया गया था। यह लगभग हमेशा AArch64 को संदर्भित करता है। यह बिल्कुल स्पष्ट नहीं है कि अक्सर AArch64 के स्थान पर ARM64 का उपयोग क्यों किया जाता है, लेकिन भ्रम का एक हिस्सा दो स्थानों से उत्पन्न होता है। इसका एक कारण यह है कि x86 का 64-बिट एक्सटेंशन x86-64 है, इसलिए स्वाभाविक रूप से ARM का 64-बिट एक्सटेंशन ARM64 होना चाहिए। Apple निश्चित रूप से ऐसा सोचता था और 2014 तक AArch64 को ARM64 के रूप में संदर्भित करता था। अधिकांश लोगों के लिए, "AArch64 ARM64 है" एक बहुत ही संतोषजनक स्पष्टीकरण है।
यदि आप वास्तव में तकनीकी बनना चाहते हैं, तो AArch64 ISA नहीं है, बल्कि ISA है निष्पादन स्थिति जो ARM CPU को ARMv8 ISA के A64 निर्देश सेट का उपयोग करने (और केवल उपयोग करने) की अनुमति देता है, जिसे पहली बार Armv8-A आर्किटेक्चर के साथ पेश किया गया था। यदि यह भ्रमित करने वाला लगता है, तो इसका कारण यह है। भले ही आप कंप्यूटर आर्किटेक्चर से परिचित हों, फिर भी इसे समझना मुश्किल हो सकता है, इसलिए मैं इसे चरण दर चरण समझाऊंगा।
तो तकनीकी रूप से, AArch64 एक राज्य है, ISA नहीं, लेकिन किसी को इसकी परवाह नहीं है, यहां तक कि Arm को भी नहीं।
एआरएम संबंधित आईएसए का एक परिवार है, और हालांकि अलग-अलग आईएसए आमतौर पर असंगतता दर्शाते हैं, लेकिन यह पूरी तरह सच नहीं है। एआरएम आईएसए के विभिन्न संस्करणों को एआरएमवी1, एआरएमवी2 इत्यादि कहा जाता है, लेकिन इन आईएसए में अनिवार्य रूप से उप-आईएसए शामिल हैं: ए-प्रोफाइल, एम-प्रोफाइल और आर-प्रोफाइल। इन उप-आईएसए के बीच मूल अंतर प्रत्येक द्वारा उपयोग किए जाने वाले निर्देशों की न्यूनतम मात्रा है, ए-प्रोफाइल सबसे अधिक उपयोग करता है और एम-प्रोफाइल सबसे कम उपयोग करता है। तो, ARM ISA को ARMv8 जैसे अलग-अलग संस्करणों में विभाजित किया गया है, और फिर उन संस्करणों को ISA के विभिन्न कार्यान्वयनों में विभाजित किया गया है।
Armv8-A, ARMv8 ISA का प्रारंभिक A-प्रोफ़ाइल कार्यान्वयन है, जिसमें दो नई चीज़ें जोड़ी गईं: AArch32 और AArch64। इन्हें स्टेट्स या मोड के रूप में संदर्भित किया जाता है, और वे एआरएम सीपीयू को विभिन्न निर्देश सेटों तक पहुंचने की अनुमति देते हैं, AArch32 में 32-बिट A32 और T32 निर्देश हैं, और AArch64 में 64-बिट A64 है निर्देश। उदाहरण के लिए, यदि कोई प्रोसेसर वर्तमान में AArch64 स्थिति में है और A32 निर्देशों का उपयोग करना चाहता है, तो उसे अपनी स्थिति को AArch32 में बदलना होगा। इसके अतिरिक्त, AArch64 मोड में, 32-बिट और 64-बिट रजिस्टर दोनों पहुंच योग्य हैं, जबकि AArch32 मोड में केवल 32-बिट रजिस्टर उपयोग योग्य हैं। इस सब में सबसे भ्रमित करने वाली बात यह है कि इन सभी चीजों को अलग-अलग आईएसए के रूप में संदर्भित किया जाता है और यहां तक कि आर्म (एआरएम आईएसए विकसित करने वाली कंपनी) भी इसके लिए दोषी है।
लेकिन अगर हम सुपर तकनीकी हो रहे हैं, तो यह वास्तव में ऐसा है: ARM ISA का आठवां संस्करण, ARMv8, पहली बार Armv8-A के साथ लागू किया गया था, जिसमें AArch32 और AArch64 नामक दो राज्य शामिल हैं। जब एक सीपीयू AArch64 स्थिति में होता है, तो यह 64-बिट A64 निर्देशों को निष्पादित कर सकता है। तो तकनीकी रूप से, AArch64 एक राज्य है, ISA नहीं, लेकिन किसी को इसकी परवाह नहीं है, यहां तक कि Arm को भी नहीं।
एआरएम के लिए 32-बिट और 64-बिट दोनों क्यों मायने रखते हैं?
तो AArch64 वास्तव में बहुत जटिल है, और केवल 32-बिट और 64-बिट निर्देशों का उपयोग करने के लिए राज्यों को स्विच करना बोझिल लगता है। बात यह है कि, 32-बिट और 64-बिट दोनों के लिए समर्थन छोड़ना बहुत महत्वपूर्ण था, इसलिए इसे इसी तरह से होना चाहिए। यह वास्तव में दो प्रमुख मुद्दों पर आया: पुराने 32-बिट सॉफ़्टवेयर का समर्थन करने की आवश्यकता, और आधुनिक, उच्च-प्रदर्शन कंप्यूटिंग को अपनाना।
यदि आर्म ने अपने पहले 64-बिट आईएसए में 32-बिट सॉफ़्टवेयर के लिए मूल समर्थन शामिल नहीं किया होता, तो यह एक आपदा हो सकती थी क्योंकि, सीधे शब्दों में कहें तो, कोई भी कोड को फिर से लिखना नहीं चाहता। यदि ARMv8 के लिए सभी को शुरू से ही नया सॉफ़्टवेयर लिखना आवश्यक होता, तो यह ISA को मृत्यु के चक्र में डाल सकता था, जहाँ कोई भी बनाता या खरीदता नहीं है सॉफ्टवेयर की कमी के कारण ARMv8 डिवाइस, और फिर डेवलपर्स उपयोगकर्ताओं की कमी के कारण ऐप नहीं बनाते हैं, जब तक आर्म को इसे कॉल नहीं करना पड़ता, तब तक विज्ञापन अनंत रहता है। छोड़ देता है. इसलिए, 32-बिट समर्थन परक्राम्य नहीं था।
दूसरी ओर, 64-बिट कंप्यूटिंग को लागू न करना भी कोई विकल्प नहीं था। इंटेल और एएमडी, x86 के पीछे की कंपनियां, 2000 के दशक की शुरुआत से अपने लिए 64-बिट आर्किटेक्चर का उपयोग कर रही थीं अद्भुत सीपीयूहालाँकि, उस समय 64-बिट एआरएम चिप्स के लिए कोई मांग नहीं थी क्योंकि फोन को उनकी आवश्यकता नहीं थी। लेकिन स्मार्टफोन के आविष्कार ने सब कुछ बदल दिया, और हर कोई चाहता था कि उसका फोन और अधिक काम करे। 64-बिट समर्थन न केवल स्मार्टफोन को अधिक शक्तिशाली बनने में मदद करेगा, बल्कि इसने दरवाजे भी खोल दिए हैं कंपनियों के लिए उन बाजारों के लिए एआरएम चिप्स बनाना जहां परंपरागत रूप से x86 का प्रभुत्व था, जैसे लैपटॉप और सर्वर.
मूल रूप से, यह संपूर्ण नामकरण भ्रम बदलती प्राथमिकताओं के जवाब में आर्म को अपनी तकनीक को आधुनिक बनाने की आवश्यकता से उत्पन्न हुआ। शायद आर्म को इस तरीके से 64-बिट समर्थन लागू करने की आवश्यकता नहीं थी, लेकिन ऐसा हुआ, और इस तरह AArch64 आया। हालाँकि AArch64 एक ISA नहीं है, फिर भी अधिकांश लोग इस शब्द का उपयोग अच्छे या बुरे के लिए करते हैं।