Components of Linux OS (Hardware, Kernel, Shell, GNU Utilities & Applications)

एक Linux system layers का एक stack है: नीचे hardware, kernel इससे बात करता हुआ, shell आपके commands लेते हुए, GNU utilities everyday काम करते हुए, और ऊपर applications, और कौन सी layer कौन सी है यह जानना पूरे system को समझने लायक बनाता है।

10 min read · 7 cards · 2 checks

Read in: English · हिन्दी · ગુજરાતી


Theory

Metal से आप तक की Layers

जब आप campus server पर एक command type करते हैं और एक result appear होता है, इसे happen कराने के लिए system के कई distinct parts ने cooperate किया। एक Linux system को सबसे अच्छे तरीके से layers के एक stack की तरह समझा जाता है, हर एक का एक clear job, नीचे physical hardware से लेकर ऊपर आप इस्तेमाल करने वाले applications तक।

आपने इस idea का core, kernel और shell के बीच split, अपने Operating Systems course में देखा। यह lesson सारी layers लेकर आता है ताकि आप हमेशा जानें कौन सा part क्या कर रहा है, जो troubleshooting और commands सीखने को बहुत आसान बनाता है।

At a glance

LayerRole
HardwarePhysical machine: CPU, memory, disks, network, devices
KernelCore: hardware, memory, processes, files, और device drivers manage करता है
ShellCommand interpreter: आपके commands पढ़ता है और kernel को इन्हें carry out करने कहता है
GNU UtilitiesStandard commands और tools (ls, cp, grep, और सैकड़ों और)
ApplicationsUser programs: editors, browsers, web servers, आपकी scripts

Theory

Kernel और Shell

दो layers special attention deserve करती हैं क्योंकि वे इस बात का heart हैं कि आप Linux के साथ कैसे interact करते हैं।

Kernel operating system का core है। यह इकलौता part है जो hardware से directly बात करता है, और यह हर precious चीज़ manage करता है: memory, running processes, file system, और devices तक access। आप कभी kernel से directly बात नहीं करते।

Shell वह तरीका है जिससे आप वहाँ पहुँचते हैं। Shell एक program है जो आपके typed commands पढ़ता है, समझता है आप क्या चाहते हैं, और kernel को यह करने कहता है। जब आप ls type करते हैं, shell उस program को ढूँढता और चलाता है, जो kernel से directory पढ़ने को कहता है। Shell system की power का आपका interface है।

Formula

Shell आपके और Kernel के बीच बैठता है

Flow picture कीजिए: आप एक command shell में type करते हैं; shell इसे interpret करता है और kernel को call करता है; kernel hardware को command देता है; और result आपकी screen पर वापस travel करता है।

यही वजह है shell इस course में इतना matter करता है: यह वह layer है जिसे आप actually operate करते हैं। लगभग सब कुछ जो आप सीखेंगे, commands, pipes, scripts, इसके नीचे kernel को direct करने के लिए shell effectively इस्तेमाल करने के बारे में है। Shell सीखिए, और आप machine command करते हैं।

Quiz

आप terminal पर एक command type करते हैं। कौन सा component उस command को पढ़ता है और kernel को इसे carry out करने कहता है?

  1. Hardware, क्योंकि यह सब कुछ चलाता है
  2. Shell, जो आपके typed commands को interpret करता है और kernel से इन्हें execute करने की request करता है
  3. Kernel, क्योंकि आप इसमें directly type करते हैं
  4. Application layer, क्योंकि commands applications हैं
Show the answer

Shell, जो आपके typed commands को interpret करता है और kernel से इन्हें execute करने की request करता है

Shell command interpreter है: यह पढ़ता है आप क्या type करते हैं, intended action समझता है, और kernel से इसे perform करने कहता है। Option A ग़लत है: hardware low-level instructions execute करता है पर आपके typed commands नहीं पढ़ता; इसे kernel direct करता है। Option C एक common misconception है, आप kernel में directly type NAHI करते; kernel के पास कोई keyboard prompt नहीं है, और shell वह layer है जो आपके और इसके बीच खड़ी है। Option D चीज़ों को confuse करता है: जबकि command programs software हैं, वह component जो आपकी command line पढ़ता और dispatch करता है specifically shell है। Chain याद रखिए: आप shell को type करते हैं, shell kernel से पूछता है, kernel hardware drive करता है।

Think first

Kernel और Shell को अलग ही क्यों करें?

एक बड़ा program क्यों नहीं जो hardware से भी बात करे और आपके commands भी ले? इन्हें split करने से क्या मिलता है? फिर tap कीजिए।

Show the answer

इन्हें अलग करना protection, flexibility, और choice देता है। Kernel dangerous, privileged काम करता है, memory, hardware, और हर process control करते हुए, तो इसे small, careful, और protected होना चाहिए; आपको इसमें reach करके इसे directly disturb करने में सक्षम NAHI होना चाहिए। Shell, इसके विपरीत, बस एक ordinary program है जिसके साथ आप freely interact करते हैं। इन्हें अलग रखने का मतलब है एक ordinary user (या एक buggy command) directly core system को harm नहीं कर सकता: kernel access guard करता है और permissions enforce करता है, जबकि आप एक layer ऊपर safely काम करते हैं। इसका मतलब यह भी है आप अपना shell CHOOSE कर सकते हैं, Bash, Zsh, और दूसरे, बिना kernel को बिल्कुल बदले, और आप कई users के लिए एक साथ कई shells चला सकते हैं, सब same single kernel share करते हुए। और kernel को आप जो tools type करते हैं उनसे independently improve या replace किया जा सकता है। यह clean division of labour, एक protected core plus swappable interfaces, Linux और generally operating systems का एक central design idea है, यही exactly वजह है यह आपके OS course में वापस introduce हुआ। Core protect कीजिए, interface flexible रखिए।

Summary

Key takeaways

  • एक Linux system layers का एक stack है: hardware, kernel, shell, GNU utilities, और applications।
  • Hardware physical machine है; kernel वह core है जो इसे और सारे resources manage करता है।
  • Shell command interpreter है: यह आपके commands पढ़ता है और kernel को उन्हें चलाने कहता है।
  • GNU utilities standard commands हैं (ls, cp, grep); applications ऊपर user programs हैं।
  • Flow है: आप shell को type करते हैं, shell kernel से पूछता है, kernel hardware drive करता है, और results वापस आते हैं।
  • Kernel और shell separate हैं ताकि core protected रहे जबकि interface flexible और swappable रहे।
  • Memory hook: shell आपका interface है; kernel guarded core है।

Study this properly

This page is the lesson to read. In Gri-Learn the same topic is a graded deck: the self-checks are scored and your weak topics are tracked. Free to start.

Start this topic

Already have an account? Sign in

More from Introduction to Linux Operating System

Gri-Learn · syllabus-mapped B.C.A. lessons in English, Hindi and Gujarati

Components of Linux OS (Hardware, Kernel, Shell, GNU Utilities & Applications) · Linux Operating System (LOS) (Minor-04) · Gri-Learn