OS कर्नेल क्या है? यह एक ऑपरेटिंग सिस्टम से कैसे भिन्न होता है? [बन्द है]


147

मैं एक कर्नेल और एक ऑपरेटिंग सिस्टम के बीच अंतर को समझने में सक्षम नहीं हूं। मुझे उनमें कोई अंतर नहीं दिखता। क्या कर्नेल एक ऑपरेटिंग सिस्टम है?

जवाबों:


74

एक ऑपरेटिंग सिस्टम की तकनीकी परिभाषा "एक ऐसा प्लेटफ़ॉर्म है जिसमें विशिष्ट पुस्तकालयों और बुनियादी सुविधाओं के विशिष्ट सेट होते हैं, जिनके निर्माण और एक दूसरे के साथ सहभागिता करने के लिए"। एक कर्नेल उस अर्थ में एक ऑपरेटिंग सिस्टम है।

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

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

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


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

1
@dimmsum यह केवल बोलचाल की परिभाषा नहीं है। ऑपरेटिंग सिस्टम को यूजर्स को इस तरह बेचा और बेचा गया है।
सेदत कपानोग्लू

क्या आप मुझे इस तरह के किसी भी विपणन की ओर इशारा कर सकते हैं? मैं एक OS विक्रेता को यह कहते हुए देख सकता था कि वे एक ऐसा मंच प्रदान करते हैं जिस पर इस प्रकार के सभी कार्यक्रम चल सकते हैं, लेकिन एक OS में उन कार्यक्रमों को शामिल नहीं किया जाता है। यदि आप दोनों को भ्रमित करते हैं तो आप सचमुच पूरे सिस्टम के बारे में बात कर रहे हैं, इसलिए परिभाषा अपना अर्थ खो देती है।
DIMMSum

1
@dimmsum मैं आपकी बात समझता हूं और इसीलिए मैंने दो अलग-अलग परिभाषाएँ दी हैं। शायद मुझे इसे "समझ" कहना चाहिए था? मुझे लगता है कि अंत-उपयोगकर्ता, विशेष रूप से उस युग के दौरान जहां ऑपरेटिंग सिस्टम बक्से में बेचे गए थे, एक ऑपरेटिंग सिस्टम क्या है और ऑपरेटिंग सिस्टम को कैसे वर्गीकृत किया जाता है, यह सीधे प्रासंगिक है। विंडोज़ xp बॉक्स ने तकनीकी परिभाषा की तुलना में पूरी तरह से अलग लेन-देन का वादा किया, यही मैं इंगित करना चाहता था।
सेदत कपपनोग्लू

1
@dimmsum तो कंप्यूटर साइंस में ऑपरेटिंग सिस्टम है और टेक स्टोर की अलमारियों पर एक और ऑपरेटिंग सिस्टम है। दोनों ऑपरेटिंग सिस्टम को अलग-अलग दृष्टिकोणों से संचालित कर रहे हैं। मैं उस भेद पर जोर देना चाहता था।
सेदत कपपनोग्लू

73

एक कर्नेल ऑपरेटिंग सिस्टम का हिस्सा है जो सिस्टम संसाधनों तक पहुंच की मध्यस्थता करता है। यह CPU, मेमोरी, डिस्क I / O और नेटवर्किंग तक पहुंच को नियंत्रित करके हार्डवेयर को प्रभावी ढंग से साझा करने के लिए कई एप्लिकेशन को सक्षम करने के लिए जिम्मेदार है।

एक ऑपरेटिंग सिस्टम कर्नेल प्लस अनुप्रयोग है जो उपयोगकर्ताओं को कुछ करने में सक्षम बनाता है (जैसे कि कंपाइलर, टेक्स्ट एडिटर, विंडो मैनेजर, आदि)।


18
संकलक और पाठ संपादक वास्तव में ऑपरेटिंग सिस्टम का हिस्सा हैं? वर्ड एक महिमा पाठ संपादक है - ओएस का वह हिस्सा है?
जॉन्स-हॅन्सन

6
मुझे जो नहीं मिलता है वह है "एक ऑपरेटिंग सिस्टम कर्नेल प्लस एप्लिकेशन है" लेकिन अगर मैं एक एप्लिकेशन इंस्टॉल करता हूं, वर्ड परफेक्ट कहता हूं, तो उसे ऑपरेटिंग सिस्टम के हिस्से के रूप में नहीं गिना जाना चाहिए, नहीं?
सेलेरिटास

7
@Celeritas पार्टी में थोड़ी देर हो गई है लेकिन कोई भी स्थापित एप्लिकेशन ऑपरेटिंग सिस्टम के एक भाग के रूप में नहीं गिना जाएगा। "एप्लिकेशन" वास्तव में सिस्टम उपयोगिताओं हैं जो ऑपरेटिंग सिस्टम के साथ आते हैं। अन्य सभी सॉफ्टवेयर्स / एप्लिकेशन जिन्हें आप इसके ऊपर की परत पर झूठ स्थापित करते हैं।
हैशकोड

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

42

ऐसा लगता है कि मूल रूपक जो हमें पहली बार में इसके लिए "कर्नेल" शब्द मिला था, को भुला दिया गया है। रूपक यह है कि एक ऑपरेटिंग सिस्टम एक बीज है। बीज का "कर्नेल" ऑपरेटिंग सिस्टम का मूल है, जो अनुप्रयोगों के कार्यक्रमों के लिए ऑपरेटिंग सिस्टम सेवाएं प्रदान करता है, जो कि बीज के "शेल" से घिरा होता है जो कि उपयोगकर्ता बाहर से देखते हैं।

कुछ लोग "कर्नेल" (और, वास्तव में, "शेल") को नीचे से अधिक विशिष्ट होना चाहते हैं। लेकिन वास्तव में ऑपरेटिंग सिस्टम में बहुत भिन्नता है। कम से कम ये विविधताएं नहीं हैं जो एक "शेल" का गठन करती हैं (जो सोलारिस से हो सकती है)sh नेटवेयर के कंसोल कमांड इंटरप्रेटर से ओएस / 2 के वर्कप्लेस शेल और विंडोज एनटी के एक्सप्लोरर के माध्यम ), लेकिन इसके ऑपरेटिंग सिस्टम से दूसरे में भी बहुत भिन्नता है क्या है, और नहीं है, एक "कर्नेल" का एक हिस्सा (उदाहरण के लिए डिस्क I / O शामिल नहीं हो सकता है या नहीं)।

यह याद रखना सबसे अच्छा है कि ये शब्द रूपक हैं

आगे की पढाई


अच्छा लगा। हालाँकि आपका उत्तर शब्दशः "आगे पढ़ने" से लिया गया है। अब मुझे पता है कि कॉपी और पेस्ट के माध्यम से बहुत सारे अपवॉट कैसे प्राप्त करें। जबरदस्त हंसी। फिर भी मददगार है।
लैकोस्टेनकोडर

18

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

तो, हम कह सकते हैं कि लिनक्स एक कर्नेल है क्योंकि इसमें फाइल-सिस्टम यूटिलिटीज, विंडोिंग सिस्टम और ग्राफिकल डेस्कटॉप, सिस्टम एडमिनिस्ट्रेटर कमांड, टेक्स्ट एडिटर, कंपाइलर आदि जैसे एप्लिकेशन शामिल नहीं हैं, इसलिए, विभिन्न कंपनियां लिनेन कर्नेल पर इस तरह के एप्लिकेशन जोड़ते हैं। और उनके ऑपरेटिंग सिस्टम जैसे ubuntu, suse, centOS, redHat आदि प्रदान करें।


9

ऑपरेटिंग सिस्टम एक है सामान्य तत्वों (यूजर इंटरफेस, पुस्तकालयों, संसाधन), जो पूरे सिस्टम बनाते हैं, वे करने के लिए दिया नाम।

कर्नेल ऑपरेटिंग सिस्टम का "मस्तिष्क" है, जो हार्ड डिस्क से मेमोरी प्रबंधन तक सब कुछ नियंत्रित करता है। जब भी आप कुछ भी करना चाहते हैं, यह कर्नेल के रूप में जाता है।


8

कर्नेल ऑपरेटिंग सिस्टम का हिस्सा है, जबकि स्वयं ऑपरेटिंग सिस्टम नहीं है। कर्नेल क्या करता है, इस पर जाने के बजाय, मैं विकिपीडिया पृष्ठ को टाल दूंगा: http://en.wikipedia.org/wiki/Kernel_%28computing%29 । महान, गहन अवलोकन।


3
मेह, इसके बजाय en.wikipedia.org/wiki/Operating_system का पहला वाक्य आज़माएँ । एक ऑपरेटिंग सिस्टम औपचारिक रूप से सीमित संसाधनों ( कंप्यूटर पर लगभग सब कुछ ) तक पहुंच की मध्यस्थता के साथ काम करता है , और अखंड कर्नेल ठीक यही करते हैं (सूक्ष्म कर्नेल कुछ काम प्रक्रियाओं पर डंप करते हैं, लेकिन वे अभी भी कर्नेल के साथ वितरित किए जाते हैं)। से एक संभावित प्रोग्रामर गिरी है ओएस। उपयोगकर्ता शेल या अन्य इंटरफेस पर भरोसा कर सकते हैं, लेकिन यह उपयोगकर्ता है । याद रखें कि OS सुपर कंप्यूटर से नीचे किसी भी एम्बेडेड विजेट के लिए दो चीजों को चलाने की जरूरत है ।
dmckee --- पूर्व-मध्यस्थ

तो आपकी बात यह है कि कुछ ऑपरेटिंग सिस्टम स्वयं कर्नेल हैं, या यह कि ओएस के कुछ भाग जो उपयोगकर्ता के साथ बातचीत करते हैं, वे ओएस का हिस्सा नहीं हैं?
डेनबेन

इसके अलावा, "en.wikipedia.org/wiki/Operating_system का पहला वाक्य" "एक ऑपरेटिंग सिस्टम (OS) हार्डवेयर और उपयोगकर्ता के बीच एक इंटरफ़ेस है ..." तो मुझे समझ में नहीं आता कि आप क्या अंतर बना रहे हैं एक उपयोगकर्ता इसके और बाकी हिस्सों के साथ बातचीत करता है।
डेनबेन

7

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


3

सरल उत्तर

कर्नेल ऑपरेटिंग सिस्टम का मुख्य टुकड़ा है। यह जरूरी नहीं कि खुद में और एक ऑपरेटिंग सिस्टम हो।

बाकी सब कुछ इसके चारों ओर बनाया गया है।

विस्तृत परिभाषा

कर्नेल (कंप्यूटिंग) - विकिपीडिया


तो क्या ड्राइवर के बिना कर्नेल ऑपरेटिंग सिस्टम है?
ज़िनस

1
नहीं ... अधिकांश कर्नेल ऑपरेटिंग सिस्टम के विभिन्न टुकड़ों को एक साथ बाँधते हैं (सिर्फ ड्राइवर नहीं)।
जस्टिन नेसनर

2

कंप्यूटिंग में, 'कर्नेल' अधिकांश कंप्यूटर ऑपरेटिंग सिस्टम का केंद्रीय घटक है; यह अनुप्रयोगों और हार्डवेयर स्तर पर किए गए वास्तविक डेटा प्रसंस्करण के बीच एक सेतु है। कर्नेल की जिम्मेदारियों में सिस्टम के संसाधनों (हार्डवेयर और सॉफ़्टवेयर घटकों के बीच संचार) को प्रबंधित करना शामिल है। आमतौर पर एक ऑपरेटिंग सिस्टम के एक बुनियादी घटक के रूप में, एक कर्नेल संसाधनों (विशेष रूप से प्रोसेसर और I / O उपकरणों) के लिए निम्नतम-स्तर की अमूर्त परत प्रदान कर सकता है जिसे एप्लिकेशन सॉफ़्टवेयर को अपना कार्य करने के लिए नियंत्रित करना होगा। यह आमतौर पर इन प्रक्रियाओं को इंटर-प्रोसेस संचार तंत्र और सिस्टम कॉल के माध्यम से आवेदन प्रक्रियाओं के लिए उपलब्ध कराता है।


2

कर्नेल ऑपरेटिंग सिस्टम हो सकता है या यह ऑपरेटिंग सिस्टम का एक हिस्सा हो सकता है। लिनक्स में, कर्नेल को पहले लोड और निष्पादित किया जाता है। फिर यह सिस्टम को उपयोगी बनाने के लिए ओएस के अन्य बिट्स (जैसे init) को शुरू करता है।

यह सूक्ष्म कर्नेल वातावरण में विशेष रूप से सच है। कर्नेल में न्यूनतम कार्यक्षमता होती है। फ़ाइल सिस्टम और टीसीपी / आईपी की तरह बाकी सब, एक उपयोगकर्ता प्रक्रिया के रूप में चलता है।


रूबी जैसी स्क्रिप्टिंग भाषा में कर्नेल के बारे में क्या? उदाहरण के लिए यदि आपने रूबी को स्थापित किया है, तो आप इसे * निक्स टर्मिनल से चला सकते हैं ruby -e "puts Kernel.methods"और आपको कई तरीके परिभाषित होंगे।
लैकोस्टेनकोडर

2

कर्नेल OS में रहता है। आमतौर पर यह एक मेमोरी स्पेस है जो विशेष रूप से ओएस कार्यों को संभालने के लिए प्रदान किया जाता है। यहां तक ​​कि ओएस ओएस सिस्टम के संसाधनों को संभालता है और कर्नेल ओएस के दिल और रखरखाव को प्रबंधित करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.