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

आप कर्नेल को एक ट्रांसलेटर के रूप में कल्पना कर सकते हैं। यह सॉफ्टवेयर से इनपुट/आउटपुट अनुरोधों को CPU और GPU के लिए एक निर्देश सेट में परिवर्तित करता है। सरल शब्दों में, यह सॉफ्टवेयर और हार्डवेयर के बीच एक परत है जो सब कुछ संभव बनाती है। कर्नेल निम्नलिखित का प्रबंधन करता है:
- CPU/GPU
- मेमोरी
- इनपुट/आउटपुट या IO डिवाइस
- संसाधन प्रबंधन
- मेमोरी प्रबंधन
- डिवाइस प्रबंधन
- सिस्टम कॉल।
यूजर प्रोसेस केवल सिस्टम कॉल के उपयोग के माध्यम से कर्नेल-स्पेस तक पहुंच सकते हैं। यदि कोई प्रोग्राम सीधे एक्सेस करने का प्रयास करता है, तो इसका परिणाम फॉल्ट होगा।
पढ़ें: कर्नेल मोड और यूजर मोड के बीच अंतर।
कर्नेल सुरक्षा और सुरक्षा
कर्नेल हार्डवेयर की भी रक्षा करता है। यदि कोई सुरक्षा नहीं है, तो कोई भी प्रोग्राम कंप्यूटर पर कोई भी कार्य करने में सक्षम होगा, जिसमें आपके कंप्यूटर को क्रैश करना, डेटा भ्रष्ट करना, आदि शामिल हैं।
आधुनिक कंप्यूटरों में, सुरक्षा हार्डवेयर स्तर पर लागू की जाती है। उदाहरण के लिए, विंडोज उन ड्राइवरों को लोड नहीं करेगा जो विश्वसनीय स्रोत से नहीं हैं और हस्ताक्षर का उपयोग करके प्रमाणित नहीं हैं। सिक्योर बूट और ट्रस्टेड बूट क्लासिक उदाहरण हैं।
सिक्योर बूट: यह PC उद्योग के सदस्यों द्वारा विकसित एक सुरक्षा मानक है। यह आपके सिस्टम को दुर्भावनापूर्ण प्रोग्राम से बचाने में मदद करता है क्योंकि यह सिस्टम स्टार्ट-अप प्रक्रिया के दौरान किसी भी अनधिकृत एप्लिकेशन को चलाने की अनुमति नहीं देता है। यह सुविधा सुनिश्चित करती है कि आपका PC केवल उस सॉफ्टवेयर का उपयोग करके बूट होता है जिस पर PC निर्माता द्वारा भरोसा किया जाता है। इसलिए, जब भी आपका PC शुरू होता है, फर्मवेयर बूट सॉफ्टवेयर के प्रत्येक टुकड़े के हस्ताक्षर की जांच करता है, जिसमें फर्मवेयर ड्राइवर (विकल्प ROM) और ऑपरेटिंग सिस्टम शामिल हैं। यदि हस्ताक्षर सत्यापित हो जाते हैं, तो PC बूट होता है और फर्मवेयर ऑपरेटिंग सिस्टम को नियंत्रण देता है।
ट्रस्टेड बूट: यह विंडोज 10 कर्नेल के डिजिटल हस्ताक्षर को लोड करने से पहले वर्चुअल ट्रस्टेड प्लेटफॉर्म मॉड्यूल (VTPM) का उपयोग करके सत्यापित करता है। बदले में, यह विंडोज स्टार्टअप प्रक्रिया के हर दूसरे घटक की पुष्टि करता है, जिसमें बूट ड्राइवर, स्टार्टअप फाइलें, और ELAM शामिल हैं। यदि किसी फ़ाइल को किसी भी हद तक बदल दिया गया है या संशोधित किया गया है, तो बूटलोडर इसका पता लगाता है और इसे भ्रष्ट घटक के रूप में पहचान कर लोड करने से इनकार कर देता है। संक्षेप में, यह बूट के दौरान सभी तत्वों के लिए ट्रस्ट की एक श्रृंखला प्रदान करता है।
कर्नेल के प्रकार क्या हैं
कर्नेल हार्डवेयर से एक सुरक्षित लाइन पर भी बात कर सकता है। इसलिए कंपनियां एक कर्नेल विकसित कर सकती हैं जो बटनों के एक सेट के माध्यम से अपने हार्डवेयर से बात कर सकता है। वॉशिंग मशीन को एक उदाहरण के रूप में लें। आपके द्वारा घुमाए गए नॉब्स और आपके द्वारा सेट किए गए समय के आधार पर - एक बुनियादी स्तर का कर्नेल पर्याप्त होना चाहिए। उस ने कहा, कर्नेल समय के साथ जटिल होते जाते हैं, जिसके परिणामस्वरूप कर्नेल के प्रकार होते हैं।
- मोनोलिथिक कर्नेल: यहां, OS और कर्नेल दोनों एक ही मेमोरी स्पेस में चलते हैं और जहां सुरक्षा एक महत्वपूर्ण चिंता नहीं है वहां उपयुक्त है। इसका परिणाम तेज एक्सेस में होता है, लेकिन यदि डिवाइस ड्राइवर में कोई बग है, तो पूरा सिस्टम क्रैश हो जाता है।
- माइक्रोकर्नेल: यह मोनोलिथिक कर्नेल का एक छोटा संस्करण है जहां कर्नेल स्वयं अधिकांश काम कर सकता है, और किसी अतिरिक्त GUI की आवश्यकता नहीं है। इनका उपयोग वहां किया जाना चाहिए जहां सुरक्षा और सिस्टम क्रैश नहीं होगा या नहीं होता।
- हाइब्रिड कर्नेल: यह कर्नेल वही है जो हम सबसे अधिक देखते हैं। विंडोज, एप्पल का macOS। वे मोनोलिथिक कर्नेल और माइक्रोकर्नेल का मिश्रण हैं। यह ड्राइवर्स को बाहर ले जाता है लेकिन सिस्टम सेवाओं को कर्नेल के अंदर रखता है - इसी तरह जैसे ड्राइवर्स लोड होते हैं जब विंडोज बूटअप प्रक्रिया शुरू करता है।
- नैनो कर्नेल: यदि आपको एक कर्नेल की आवश्यकता है, लेकिन इसके अधिकांश फ़ंक्शन बाहर सेट हैं, तो यह तस्वीर में आता है।
- एक्सो कर्नेल: यह कर्नेल केवल प्रक्रिया सुरक्षा और संसाधन प्रबंधन प्रदान करता है। हालांकि यह ज्यादातर तब उपयोग किया जाता है जब आप एक इन-हाउस प्रोजेक्ट का परीक्षण कर रहे होते हैं, और आप एक बेहतर कर्नेल प्रकार में अपग्रेड करते हैं।
कर्नेल के बारे में इससे कहीं अधिक है जितना हमने बात की है। जैसे-जैसे आप गहराई से जाते हैं, कर्नेल की परिभाषा व्यापक और गहन होती जाती है।
हम आशा करते हैं कि पोस्ट समझने में आसान थी और आपको बुनियादी बातों से पार पाने में मदद करती है।
अगला पढ़ें: लिनक्स कर्नेल का इंटरैक्टिव मानचित्र।
