मुझे यह समझने में कठिनाई है कि ओएस में क्या शामिल है और क्या नहीं है। क्या एक डिवाइस ड्राइवर जैसे प्रिंटर ड्राइवर या ग्राफिक ड्राइवर एक ओएस का हिस्सा है? एक ओएस की परिभाषा के बारे में सोचकर मुझे विश्वास है कि ड्राइवर ओएस का हिस्सा हैं।
मुझे यह समझने में कठिनाई है कि ओएस में क्या शामिल है और क्या नहीं है। क्या एक डिवाइस ड्राइवर जैसे प्रिंटर ड्राइवर या ग्राफिक ड्राइवर एक ओएस का हिस्सा है? एक ओएस की परिभाषा के बारे में सोचकर मुझे विश्वास है कि ड्राइवर ओएस का हिस्सा हैं।
जवाबों:
हां, ड्राइवर OS का हिस्सा हैं। वे ओएस कर्नेल के समान विशेषाधिकार स्तर के साथ चलते हैं, और एक ड्राइवर को लिखने के लिए आपको ओएस इंटर्नल के बारे में एक अच्छा सौदा जानना चाहिए। ड्राइवरों की भूमिका हार्डवेयर का एक अमूर्त रूप प्रदान करने की है, ताकि अनुप्रयोग इसका विवरण जानने के बजाय OS API (एप्लिकेशन प्रोग्रामिंग इंटरफ़ेस) के माध्यम से इसका उपयोग कर सकें। कई मामलों में यह एक ही हार्डवेयर के एक ही टुकड़े को कई अनुप्रयोगों में एक साथ साझा करने की अनुमति देता है।
कुछ ऐसा है जो उपयोगकर्ताओं को यह सोचकर भ्रमित करता है कि ड्राइवर OS का हिस्सा नहीं हो सकते हैं, कई विक्रेता हार्डवेयर के लिए ड्राइवरों की आपूर्ति करते हैं जो वे ओएस से अलग से बनाते हैं। वास्तव में, कई ड्राइवरों को लोड करने योग्य मॉड्यूल के रूप में प्रस्तुत किया जाता है जिन्हें लोड किया जा सकता है और फिर गतिशील रूप से ओएस में भाग ले सकते हैं। एक बार जब उनका उपयोग नहीं किया जाता है, तो उन्हें ओएस से "डिस्कनेक्ट" किया जा सकता है और यह सामान्य रूप से चलता रहता है।
लोड करने योग्य या नहीं, ड्राइवर हमेशा उन उपकरणों के लिए विशिष्ट होते हैं जिन्हें उन्हें सिस्टम को उपलब्ध कराना चाहिए, इसलिए जब वे कभी-कभी ओएस के "वैकल्पिक" भाग होते हैं, तो वे संचालन करते समय इसमें भाग लेते हैं।
"ओएस" शब्द का अर्थ कई चीजें हो सकता है।
अधिकांश ऑपरेटिंग सिस्टम के तहत, कर्नेल उस कोड का टुकड़ा है जो सब कुछ प्रबंधित और "रन" कर रहा है, और हार्डवेयर तक पहुंच प्राप्त करता है, यह आमतौर पर अपने आप में कुछ भी दिलचस्प नहीं कर सकता है - इसका काम अनुप्रयोगों को चलाने के लिए एक रूपरेखा प्रदान करना है " शीर्ष पर "अगर यह। एक ओएस के कई लोगों की परिभाषा में उपयोगिताओं, गोले और प्रोग्राम शामिल हैं जो एक परिचित, मानकीकृत वातावरण बनाते हैं।
ड्राइवर कर्नेल पर निर्भर करते हैं, और शायद यह कहना सबसे सही है कि वे प्लगइन्स की तरह इसे "विस्तारित" करते हैं। लिनक्स "लोडेबल कर्नेल मॉड्यूल" की धारणा का समर्थन करता है - और सभी डिवाइस ड्राइवर लोड करने योग्य कर्नेल मॉड्यूल हो सकते हैं। ऐसा कर्नेल बनाना भी संभव है जहां इनमें से एक या अधिक मॉड्यूल "अंतर्निहित" है और कर्नेल से अलग नहीं है। तो आप वास्तव में लिनक्स के तहत एक "मॉड्यूललेस" कर्नेल का निर्माण कर सकते हैं, और यह आपके द्वारा बनाए गए मॉड्यूल के अलावा किसी भी हार्डवेयर का समर्थन करने में सक्षम नहीं होगा।
मैं विंडोज की हिम्मत से कम परिचित हूं, लेकिन मेरा मानना है कि बहुत कम "मिनिपोर्ट" ड्राइवरों को छोड़कर सभी ड्राइवर बाहरी फाइलें हैं जो बूट पर लोड होती हैं। यदि आप विंडोज पर सेवाएं बनाने में थोड़ा खोदते हैं, तो ऐसा लगता है कि ड्राइवर वास्तव में विंडोज के तहत सेवाओं के विशेष रूप हैं। कुछ प्रोग्राम निम्न स्तर पर हार्डवेयर तक पहुंचने के लिए ड्राइवरों को स्थापित करते हैं, लेकिन डिवाइस को चलाने के लिए आवश्यक नहीं है, ये आमतौर पर डिवाइस मैनेजर के तहत "नॉन-प्लग एंड प्ले" ड्राइवर होते हैं। इस प्रकार यह भी लगता है कि ड्राइवर समान फ़ंक्शन को लिनक्स के तहत लोड करने योग्य कर्नेल मॉड्यूल के रूप में कार्य करते हैं।
मैं सरलता के लिए कहूंगा कि वे ओएस का हिस्सा हैं, क्योंकि वे वास्तव में ओएस के बिना उपयोग नहीं किए जा सकते हैं, और उपयोगी नहीं हैं जब तक कि ओएस बूट नहीं किया जाता है, लेकिन खींची गई रेखा किसी भी मामले में मनमाना नहीं है।
कोई भी ड्राइवर OS का हिस्सा नहीं है। आप कह सकते हैं कि ड्राइवर डिवाइस या हार्डवेयर के साथ संवाद करने के लिए ओएस की मदद करता है। OS में डिफ़ॉल्ट रूप से सभी ड्राइवर नहीं होते हैं जैसे कि windows xp और vista लेकिन विंडोज 7 में अधिकांश आवश्यक ड्राइवर शामिल होते हैं, इसलिए आप भ्रमित नहीं करते कि वे OS का हिस्सा नहीं हैं।