what is kernel in hindi - kernel in hindi

दोस्तों जब मैंने आपको ऑपरेटिंग सिस्टम के बारे में अपनी पिछली पोस्ट ऑपरेटिंग सिस्टम क्या है और कैसे काम करता है के बारे में बताया था तो उसमे मैंने आपको कर्नेल के बारे में भी थोड़ा बहुत जानकारी दिया था पर उतनी जानकारी कर्नेल के बारे में बहुत कम है इसलिए आज मैं अपने इस ब्लॉग पोस्ट में कर्नेल की पूरी जानकारी डिटेल्स में दूंगा जिससे आप के मन में कर्नेल को लेकर कोई संदेह ना रहे और आप इसे अच्छे से समझ जाये। 



इसको हम बहुत ही आसान भाषा में समझेंगे देखिए जैसे हमारे शरीर को चलाने के लिए दिल बहुत ही महत्वपूर्ण हिस्सा है इसके बिना हमारा शरीर किसी काम का नहीं ठीक उसी प्रकार कर्नेल भी किसी ऑपरेटिंग सिस्टम को चलाने के लिए उस ऑपरेटिंग सिस्टम का सबसे महत्पूर्ण भाग है और इसके बिना कोई भी ऑपरेटिंग सिस्टम ना तो काम करेगा और ना ही बन सकता है। 


कर्नेल क्या है (What is kernel in Hindi)
कर्नेल क्या है (What is kernel in Hindi)

कर्नेल क्या है (What is kernel in Hindi)




देखिये कर्नेल किसी भी ऑपरेटिंग सिस्टम का core part होता है और यह सिस्टम के अंदर सभी रिसोर्स को पूरी तरह कण्ट्रोल करता है। जब आप अपने कंप्यूटर सिस्टम को चालू करते है तो यही वह प्रोग्राम है जो बूटलोडर के बाद सबसे पहले कंप्यूटर के RAM में लोड होता है क्यों की ऑपरेटिंग सिस्टम के सभी चीज़ो को जैसे की इनपुट आउटपुट और सॉफ्टवेयर के प्रोसेसिंग को  कर्नेल ही हैंडिल करता है। जब तक आप का सिस्टम चालू रहता है तब तक कर्नेल आपके RAM में लोड रहता है और यह हार्डवेयर और सॉफ्टवेयर कॉम्पोनेन्ट के बीच interaction का काम करता है। 

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

कर्नेल इन सब चीजों को मैनेज करता है -

  1. CPU/GPU
  2. Memory
  3. Input/Output या IO devices को 
  4. Resource Management
  5. Memory Management
  6. Device Management
  7. System Calls.

सिस्टम कॉल के द्वारा यूजर प्रोसेस कर्नेल स्पेस को एक्सेस कर सकता है,अगर कोई प्रोग्राम इसे डायरेक्टली एक्सेस करना चाहेगा तो उसे गलत रिजल्ट मिलेगा। 


कर्नेल सिक्योरिटी और प्रोटेक्शन 


kernel आपके सिस्टम हार्डवेयर को भी protechts करता है अगर कोई प्रोटेक्शन नहीं होता तो कोई भी कंप्यूटर के अंदर कोई भी टास्क कर सकता है जिससे आपके ऑपरेटिंग सिस्टम के क्रैश और डाटा corrupt हो सकता है। और जैसा की आप लोग जानते है की आज कल हार्डवेयर लेवल पर भी सिक्योरिटी मिलने लगा है जैसे की सिक्योर बूट और ट्रस्टेड बूट है। 

सिक्योर बूट (secure Boot ) 


यह सिक्योरिटी फीचर PC industry के लोगो ने मिल कर बनाया है। जब भी आपका सिस्टम स्टार्ट होता है तो उस समय कोई भी malicious प्रोग्राम या unauthorize एप्लीकेशन को यह रन होने से रोकता है। और सिक्योर बूट यह भी सुनिश्चित करता है की आप का कंप्यूटर सिर्फ उन्ही सॉफ्टवेयर से बूट करे जो manufacturare के द्वारा trusted हो, इसलिए जब भी आप का कंप्यूटर बूट करता है तो फर्मवेयर बूट सॉफ्टवेयर जैसे की firmware ड्राइवर और ऑपरेटिंग सिस्टम के हर एक pice के signature को चेक करता है। अगर signature verified होता है तो PC boot करता है और फर्मवेयर ऑपरेटिंग  सिस्टम को अपना कण्ट्रोल देता है। 


ट्रस्टेड बूट (Trusted Boot )


यह विंडोज 10 के कर्नेल को लोड करने से पहले उसके डिजिटल signature को verifie करने के लिए वर्चुअल ट्रस्टेड प्लेटफार्म मॉडुल (VTPM ) का उपयोग करता है। यह विंडोज स्टार्टअप प्रोसेस के हर एक कॉम्पोनेन्ट को कनफर्म्ड करता है जैसे बूट ड्राइवर और स्टार्टअप फाइल। अगर किसी फाइल को बदल दिया गया या उसमे बहुत ज्यादे बदलाव हो जाता है तो बूट लोडर इसे पहचान लेता है और इसको corrupt मान कर लोड होने से मना कर देता है। अगर सही शब्दो में कहे तो यह बूट होने के दौरान सभी एलिमेंट को एक चैन ऑफ़ ट्रस्ट देता है। 


कर्नेल कितने टाइप के होते है 

कर्नेल को दो मुख्य भागो में बाटा गया है -


  1. मोनोलिथिक कर्नेल (Monolithic kernel )
  2. माइक्रो कर्नेल (Micro Kernel )
इन दोनों को मिलाकर भी एक कर्नेल बनता है जिसको Hybried कर्नेल कहते है तो चलिए अब इन तीनो के बारे में डिटेल्स में जानते है।

1. मोनोलिथिक कर्नेल (Monolithic Kernel )


मोनोलिथिक कर्नेल वो कर्नेल होते है जिसमे यूजर सर्विस और कर्नेल सर्विस एक ही मेमोरी स्पेस में होते है.इसमें यूजर स्पेस और कर्नेल स्पेस के लिए अलग अलग मेमोरी का इस्तेमाल नहीं होता है। ऐसा करने से कर्नेल का साइज तो बढ़ता है साथ ही साथ ऑपरेटिंग सिस्टम का साइज भी बढ़ जाता है। और जैसा की हम जानते है की मोनोलिथिक कर्नेल में यूजर स्पेस और कर्नेल स्पेस अलग अलग नहीं होते है जिससे किसी भी प्रोसेस को एक्सेक्यूटे करना बहुत फ़ास्ट होता है इसके लिए। 


मोनोलिथिक कर्नेल के एडवांटेज 

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

मोनोलिथिक कर्नेल के disadvantage 

  • इसका सबसे बड़ा disadvantage यह है की अगर कोई सर्विस इसमें फ़ैल होती है तो इससे पूरा सिस्टम फ़ैल हो सकता है। 
  • अगर आप को कोई नयी सर्विस जोड़ना है तो आपको अपने पुरे ऑपरेटिंग सिस्टम को मॉडिफाई करना पड़ेगा। 

2. माइक्रो कर्नेल (Micro Kernel )


माइक्रो कर्नेल मोनोलिथिक कर्नेल से बहुत अलग है इसमें यूजर सर्विस और कर्नेल सर्विस अलग अलग स्पेस में होती है। और जैस की हम यूजर स्पेस और कर्नेल स्पेस का अलग अलग इस्तेमाल कर रहे है तो इससे कर्नेल का साइज भी कम होगा और अगर कर्नेल का साइज कम होगा तो ऑपरेटिंग सिस्टम का साइज तो जरूर कम होगा। 

और जैसा की हम जानते है की हम यूजर सर्विस और कर्नेल सर्विस के लिए अलग अलग स्पेस का उपयोग कर रहे है तो एप्लीकेशन और सर्विस के बीच जो कम्युनिकेशन होगा वो मैसेज पार्सिंग की मदत से होगा जिससे की किसी भी प्रोसेस को एक्सेक्यूटे करने का स्पीड कम होगा। 

माइक्रो कर्नेल के एडवांटेज 

  • अगर इसमें आप कोई नयी सर्विस को जोड़ना चाहते है तो बड़ी आसानी से जोड़ सकते है। 

माइक्रो कर्नेल के disadvantage 

  • जैसा की हम जानते है की इसमें यूजर स्पेस और कर्नेल स्पेस अलग अलग होता है जिससे इनके बीच में कम्युनिकेशन के समय की वजह से कोई भी प्रोसेस स्लो एक्सेक्यूटे होगा। 

हाइब्रिड कर्नेल (Hybrid Kernel )


हाइब्रिड कर्नेल मोनोलिथिक और माइक्रो कर्नेल से मिल कर बना है।  यह मोनोलिथिक कर्नेल का स्पीड देता है और माइक्रो कर्नेल की मॉडुलरिटी देता है। इसी कर्नेल का उपयोग आज कल के ऑपरेटिंग सिस्टम जैसे की विंडोज, मैक ऑपरेटिंग सिस्टम में होता है। 

नैनो कर्नेल (Nano Kernel )


जैसा की नाम से ही पता चल रहा है यह नैनो है मतलब कर्नेल का पूरा कोड बहुत ही छोटा होता है। इसमें हार्डवेयर के प्रिविलेज मोड में एक्सेक्यूट कोड बहुत छोटा होता है। नैनो कर्नेल शब्द का उपयोग उन कर्नेल के लिए करते है जो नोनो सेकंड क्लॉक रेसोलुशन सपोर्ट करते है। 


एक्सोकर्नल (Exokernel )


एक्सोकर्नल एक ऑपरेटिंग सिस्टम कर्नेल है इसे MIT Parallel द्वारा बनाया गया और distributed ऑपरेटिंग सिस्टम द्वार विकसित किया गया। यह कर्नेल केवल प्रोसेस प्रोटेक्शन और रिसोर्स को हैंडल करने की सुविधा प्रदान करता है। इसका ज्यादा तर उपयोग इनहॉउस प्रोजेक्ट के टेस्ट के लिए किया जाता है और आप एक बहुत अच्छा कर्नेल के लिए इसको अपग्रेड भी कर सकते हो 

Function Of Kernel In Hindi 


कर्नेल का जो main function होता है उसको हम कुछ इस तरह से बाट सकते है -

  1. मेमोरी मैनेजमेंट 
  2. प्रोसेस मैनेजमेंट 
  3. डिवाइस मैनेजमेंट 
  4. इंटरप्शन हैंडलिंग 
  5. इनपुट आउटपुट कम्युनिकेशन 


Memory Management

जब भी हम कोई प्रोसेस अपने कंप्यूटर में ओपन करते है या किसी एप्लीकेशन को एक्सेक्यूटे करते है तो वह कंप्यूटर में चलने के लिए कुछ RAM या यु कहे तो मेमोरी लेता है। और जब वह एप्लीकेशन या प्रोग्राम टर्मिनेट होता है तो वह मेमोरी फिर से खाली हो जाती है और इस खाली  मेमोरी का दुबारा उपयोग किया जा सकता है। पर इस काम को करने के लिए कोई तो होना चाहिए ना की अगर कोई नया प्रोग्राम एक्सेक्यूट हो रहा है तो वह खाली मेमोरी इस नए प्रोग्राम को assign कर दिया जाय, और मेमोरी मैनेजमेंट में कर्नेल इस काम को बहुत बखुबी तरीके से करता है। कर्नेल इस बात का पूरा ख्याल रखता है की मेमोरी का कौन सा पार्ट उपयोग हो रहा है और कौन सा पार्ट अभी खाली है किसी दूसरे प्रोसेस को allocate करने के लिए। 

Process Management 

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

Device Management

 जो भी peripheral डिवाइस मतलब जो भी बाहरी डिवाइस कंप्यूटर से कनेक्ट होते है जैसे की इनपुट आउटपुट डिवाइस उन सब का मैनेजमेंट भी कर्नेल के द्वारा ही होता है। 

interrupt Handling 

जब भी आप का सिस्टम कोई भी प्रोसेस एक्सेक्यूट करता है तो इसके साथ एक कंडीशन होता है की जो बहुत महत्वपूर्ण टास्क है वह पहले एक्सेक्यूटे होगा और इस काम को करने के लिए कर्नेल को जो प्रोसेस चल रहा है और जो हाई perority वाला प्रोग्राम है उसको पहले एक्सेक्यूट करने के लिए कर्नेल को इन दोनों के बीच interrupt करना पड़ता है। 

I/O Communication

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

Conclusion दोस्तों मुझे पूरा विश्वास है की आप लोगो को मेरे इस पोस्ट what is kernel in hindi - kernel in hindi से कर्नेल के बारे में पूरी जानकारी मिली होगी इसमें मैंने कर्नेल के हर एक पार्ट को कवर करने की कोशिस किया हु जैसे की कर्नेल के प्रकार कर्नेल के फंक्शन और भी बहुत सी जानकारिया दिया हु। अगर आप को मेरा ये पोस्ट पसंद आया है तो अपने दोस्तों के साथ शेयर करे और अगर आप को कोई सवाल पूछना है या आप का कोई सुझाव है तो कमेंट में लिख कर बताना न भूले। 

Post a Comment

Previous Post Next Post