2008-10-05 6 views

उत्तर

23

Exokernel एमआईटी से एक ऑपरेटिंग सिस्टम (और यह वेरिएंट है के एक वर्ग) जो अपेक्षाकृत कम हार्डवेयर मतिहीनता संभालती है। एक्सोकॉर्नल में, हार्डवेयर को नियंत्रित करने की निम्न-स्तरीय जिम्मेदारियां (विशेष रूप से स्मृति आवंटन) अक्सर डेवलपर के हाथों में छोड़ी जाती हैं। कई डेवलपर शायद ओएस को ऐसे निम्न-स्तरीय कार्यों की ज़िम्मेदारी लेना पसंद करेंगे, क्योंकि अधिकांश डेवलपर्स सिर्फ एप्लिकेशन लिख रहे हैं।

एक exokernel बस प्रोग्राम पर भौतिक हार्डवेयर संसाधन आवंटित करता है। यह प्रोग्राम को लाइब्रेरी ऑपरेटिंग सिस्टम का उपयोग करने की अनुमति देता है, जो एक्सोकोकनेल प्रदान नहीं कर रहे कुछ अमूर्तता प्रदान करने के लिए जुड़े हुए हैं। डेवलपर तब अमूर्त मॉडल के बीच चयन कर सकते हैं, या अपना खुद का रोल कर सकते हैं। आवेदन को देखते हुए, इसमें शानदार प्रदर्शन लाभ हो सकते हैं। यदि आप नहीं जानते कि आप क्या कर रहे हैं, तो आप प्रोग्राम भी लिख सकते हैं जो क्रैश होने पर विस्फोट कर देंगे।

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

अवधि nanokernel गिरी की एक विशिष्ट प्रकार का वर्णन करने के लिए प्रयोग किया जाता है। उपसर्ग "पिको-", या "नैनो-", "माइक्रो-" आमतौर पर कर्नेल के "आकार" को दर्शाता है .. बड़े कर्नेल अधिक सुविधाओं के साथ और अधिक निर्मित हैं, और अधिक हार्डवेयर अबास्ट्रक्शन संभालते हैं। नैनोकर्नल्स अपेक्षाकृत छोटे कर्नेल हैं जो हार्डवेयर अबास्ट्रक्शन प्रदान करते हैं, लेकिन सिस्टम सिस्टम की कमी। आधुनिक माइक्रोक्रोनल्स में सिस्टम सेवाओं की भी कमी है, इसलिए शर्तें समान हो गई हैं।

कर्नेल आमतौर पर जो गिरी एक नई तरह की झुकेंगे अनुसंधान के एक विशिष्ट बैच से स्टेम की नाम, उदाहरण के लिए कर्नेल पर पर कार्नेगी मेलॉन "मच" कहा जाता है विकसित की है, जो एक आधुनिक का पहला उदाहरण में से एक था "microkernel"।

Sidenote: exokernel का असली लाभ पसंद है। अधिकांश समय, बहुत सारे अमूर्त मतलब कम आपदाजनक बग का मतलब है। कुछ अनुप्रयोगों में, आप एक अलग अमूर्त मॉडल का उपयोग करना चाह सकते हैं, या आप स्वयं सबकुछ संभालना चाहते हैं। अगर हम किसी विशेष परियोजना के लिए ओएस अबास्ट्रक्शन को स्क्रैप करना चाहते हैं, तो हमें ऑपरेटिंग सिस्टम को काटना होगा और नौकरी के लिए हार्डवेयर का एक टुकड़ा करना होगा। Exokernel के मामले में, यह आवश्यक नहीं है। हम सीधे "धातु के लिए" कार्यक्रम कर सकते हैं, लेकिन जब चाहें एक अमूर्त मॉडल में लिंक करना भी चुनते हैं। यह एक बहुत ही शक्तिशाली अवधारणा है।

सिडेनोटे: इस तरह के निम्न स्तर पर स्मृति के साथ काम करना अधिकांश एप्लिकेशन डेवलपर्स के लिए अनावश्यक है। आमतौर पर कर्नेल के शीर्ष पर बनाए गए ऑपरेटिंग सिस्टम की कई परतें होती हैं, और आपका एप्लिकेशन ओएस के उच्चतम स्तर पर चलता है। जावास्क्रिप्ट में लिखते समय, आप अभी भी ऊंचे हैं, एक ऐसे अनुप्रयोग में लागू मॉडल के साथ इंटरफेसिंग करते हैं जो एक ऑपरेटिंग सिस्टम आदि पर चलता है। स्मृति को संबोधित करते हुए, इसे अनदेखा नहीं किया जाना चाहिए, इसका मतलब किसी डेवलपर से कुछ अलग हो सकता है जो इतने उच्च स्तर के अमूर्तता पर लिख रहा है।

0

मुझे एक लिंक मिला जो वास्तव में मोनोलिथिक माइक्रो और एक्सोकर्नल्स को अलग करने के लिए बहुत उपयोगी है। लिंक --- http://www.scribd.com/doc/174682128/Difference-between-monolithic-microkernel-and-exokernel

+3

लिंक-केवल उत्तर दृढ़ता से निराश होते हैं; कृपया जो मिला है उसे सारांशित करें। – SamB

+0

यह लिंक मर गया प्रतीत होता है, वैसे भी ... – RandomDSdevel

संबंधित मुद्दे