अप्रबंधित कोड (Unmanaged Code)
ऐसे एप्लिकेशन जो CLR के नियंत्रण में नहीं हैं, वे अप्रबंधित हैं।
असुरक्षित कोड या अप्रबंधित कोड वह कोड ब्लॉक है जो पॉइंटर वेरिएबल का उपयोग करता है।
अनसेफ मॉडिफायर अप्रबंधित कोड में पॉइंटर के उपयोग की अनुमति देता है।
आइए उदाहरण देखें:
उदाहरण
static unsafe void Main(string[] args) { int var = 20; int* p = &var; Console.WriteLine("Data is: {0} ", var); Console.WriteLine("Address is: {0}", (int)p); Console.ReadKey(); }प्रबंधित कोड (Managed Code)
प्रबंधित कोड वह कोड है जिसका निष्पादन कॉमन लैंग्वेज रनटाइम (CLR) द्वारा प्रबंधित किया जाता है। यह प्रबंधित कोड प्राप्त करता है और इसे मशीन कोड में संकलित करता है। उसके बाद, कोड निष्पादित होता है। यहां रनटाइम यानी CLR स्वचालित मेमोरी प्रबंधन, टाइप सुरक्षा आदि प्रदान करता है।
प्रबंधित कोड उच्च-स्तरीय भाषाओं में लिखा जाता है जो .NET के शीर्ष पर चलते हैं। यह C#, F# आदि हो सकते हैं। इनमें से किसी भी भाषा में संकलित कोड के साथ, मशीन कोड उत्पन्न नहीं होता। हालांकि, आपको इंटरमीडिएट लैंग्वेज कोड मिलेगा, जिसे रनटाइम द्वारा संकलित और निष्पादित किया जाता है।
C/C++ कोड, जिसे "अप्रबंधित कोड" कहा जाता है, को यह विशेषाधिकार नहीं है। प्रोग्राम बाइनरी में होता है जिसे ऑपरेटिंग सिस्टम द्वारा मेमोरी में लोड किया जाता है। बाकी, प्रोग्रामर को ध्यान रखना होता है।