सवाल सीएलआर और सीएलआई - क्या अंतर है?


मैं काफी नया .NET ढांचा हूं, इसलिए मैं जानना चाहता हूं कि सीएलआर और सीएलआई के बीच क्या अंतर है? जो भी मैंने अभी तक पढ़ा है, ऐसा लगता है कि सीएलआई सीएलआर का सबसेट है। लेकिन सीएलआर अनिवार्य में सबकुछ नहीं है? सीएलआई बनाने के लिए सीएलआर से क्या छोड़ा जा सकता है?


44
2018-01-26 18:04


मूल




जवाब:


CLR माइक्रोसॉफ्ट के कार्यान्वयन है सीएलआई मानक


66
2018-01-26 18:06



यह भी करता है, आपको केवल लक्ष्य आर्किटेक्चर को 'तरल' पर सेट करना होगा। - Cody Brocious
त्वरित उत्तर के लिए धन्यवाद। तो इसका मतलब है कि कम से कम सैद्धांतिक रूप से हम सीएलआई का तीसरा पक्ष कार्यान्वयन कर सकते हैं जो विभिन्न ओएस पर चल सकता है और जेवीएम के समान .NET घटकों का समर्थन कर सकता है? - Naveen
@Naveen - मोनो पर एक नज़र डालें जो वास्तव में है। - Kev
इसके अनुसार stackoverflow.com/questions/9321803/...      यह दावा करता है कि मोनो सीएलआर लागू करता है। क्या यह गलत है और यह कहना सही है कि मोनो सीएलआई लागू करता है, सीएलआर नहीं? - barlop
यह उत्तर वास्तव में सही नहीं है ... सीएलआर वीईएस का कार्यान्वयन है ... नीचे दिए गए उत्तर को देखें - Adrian


सीएलआर निष्पादन वातावरण है जिसमें एक .NET अनुप्रयोग सुरक्षित रूप से होस्ट / चलाया जाता है।

आप इसे .NET की निजी ऑपरेटिंग सिस्टम के रूप में देख सकते हैं जो .NET एप्लिकेशन प्रारंभ होने से ठीक पहले शुरू होता है और लोड करता है।

सीएलआर किसी भी .NET आवेदन की कुछ आवश्यक आवश्यकताओं का ख्याल रखता है जो अन्यथा लागू करने के लिए लिखित जानबूझकर कोड की आवश्यकता होती है; ऐसी आवश्यकताओं जो प्रकृति में समग्र हैं और किसी भी प्रकार के आवेदन के लिए एक अच्छे, कुशल और सुरक्षित तरीके से चलाने के लिए आवश्यक हैं [उदा। मेमोरी आवंटन को संभालें और आवश्यकता होने पर इसे छोड़ दें, पॉइंटर्स को लटकने से बचें, टाइप-कास्टिंग त्रुटियों से बचें आदि]

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

सीएलआई माइक्रोसॉफ्ट द्वारा विकसित किया गया है और आईएसओ और ईसीएमए द्वारा मानकीकृत है।

सीएलआर सीएलआई के वीईएस [वर्चुअल एक्जिक्यूशन सिस्टम] सेक्शन का व्यावहारिक कार्यान्वयन है और एमएस.नेट प्लेटफ़ॉर्म के मूल घटकों में से एक बनाता है

एक आम आदमी की भाषा में, सीएलआई एक नुस्खा है जबकि सीएलआर व्यंजन है :-)


44
2018-06-24 14:54



ध्यान दें कि यह कुछ स्पष्टीकरण के अलावा कोडी ब्रोकियस के जवाब के समान ही कहता है। यह राय का विषय है कि स्पष्टीकरण कितना मूल्य प्रदान करता है। .NET के संदर्भ सटीक नहीं हो सकते हैं; यह मेरी समझ है कि .NET सीएलआई मानक से अधिक लागू करता है। - user34660


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

वीईएस एक मानक वर्चुअल मशीन विनिर्देश है जिसे सीआईएल (सामान्य इंटरमीडिएट भाषा) मॉड्यूल (डीएलएल और एक्सई) को लोड और निष्पादित करने के लिए कार्यान्वित किया जाना चाहिए। एक वीईएस कार्यान्वयन कचरा संग्रहण और सुरक्षा जैसे रनटाइम सेवाएं भी प्रदान करता है।

ईसीएमए सी # और आम भाषा बुनियादी ढांचे मानक


14
2018-03-27 03:36





CLI, सामान्य भाषा बुनियादी ढांचा माइक्रोसॉफ्ट द्वारा विकसित विनिर्देश या मानदंड है।

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

CLR, सामान्य भाषा रनटाइमजो माइक्रोसॉफ्ट द्वारा सीएलआई का कार्यान्वयन है।

सीएलआर .NET Framework में वर्चुअल मशीन घटक है जिसे रनटाइम के रूप में जाना जाता है और .NET प्रोग्राम निष्पादित करने के लिए ज़िम्मेदार है। यह .NET प्रोग्राम के लिए एक तरह का ऑपरेटिंग सिस्टम है जो प्रोग्राम को संभालने के लिए आवश्यक कई कार्यों को निष्पादित करता है।


enter image description here

कहा पे कोल इंडिया है सामान्य इंटरमीडिएट भाषा उसमें खिलाया गया CLR मशीन कोड की अगली पीढ़ी के लिए।


सीएलआर की विशेषताएं:

  1. स्मृति प्रबंधन
  2. उपवाद सम्भालना
  3. कोड पहुंच सुरक्षा
  4. थ्रेड प्रबंधन
  5. डिबगिंग
  6. सत्यापन और संकलन
  7. सुरक्षा टाइप करें
  8. कचरा इकठा करना

4
2017-11-21 14:34





सीएलआर एक पूरा वातावरण है जिसमें सीएलआई, सीटीएस, सीएलएस एकीकरण में काम करता है, यह देशी कोड के लिए कचरा संग्रह, स्मृति प्रबंधन, सुरक्षा, intemediate भाषा भी शामिल है ... CLI निष्पादन योग्य कोड, और रनटाइम के प्रारूप के लिए एक विनिर्देश है पर्यावरण जो उस कोड को निष्पादित कर सकता है।


-2
2018-06-17 04:56