Types of Operating Systems
How operating systems differ based on how they handle multiple tasks and users.
Types of Operating Systems
Operating System (OS) एक system software है जो computer के hardware और software resources को manage करता है तथा user और computer के बीच interface प्रदान करता है। Operating Systems को उनके working method, number of users, number of tasks, response time और system architecture के आधार पर विभिन्न प्रकारों में classify किया जाता है।
What is Operating System Classification?
सभी computer systems की requirements एक जैसी नहीं होती हैं। कुछ systems में एक समय में एक ही task किया जाता है, जबकि कुछ systems में अनेक tasks या users को simultaneously support करना आवश्यक होता है। इसी आवश्यकता के आधार पर Operating Systems को अलग-अलग categories में classify किया जाता है।
एक महत्वपूर्ण बात यह है कि ये categories हमेशा mutually exclusive नहीं होतीं। एक modern Operating System में एक से अधिक characteristics हो सकती हैं। उदाहरण के लिए कोई Operating System multitasking के साथ multiprocessing और multi-user capabilities भी प्रदान कर सकता है।
1. Batch Operating System
Batch Operating System में similar प्रकार के jobs को एक batch (समूह) में collect करके बिना user के continuous interaction के execute किया जाता है। Jobs को पहले तैयार करके system को दिया जाता है और Operating System उन्हें निर्धारित क्रम के अनुसार process करता है।
इस प्रकार के system में user और computer के बीच execution के दौरान direct interaction बहुत कम या नहीं होता है।
Example: पुराने बड़े computer systems में payroll processing और large-scale data processing जैसे tasks batch processing के माध्यम से किए जाते थे।
Advantages of Batch Operating System
- Large number of similar jobs को efficiently process किया जा सकता है।
- Repeated processing tasks के लिए useful होता है।
- User interaction की आवश्यकता कम होती है।
Limitations of Batch Operating System
- Immediate user interaction उपलब्ध नहीं होता।
- Job के result के लिए user को प्रतीक्षा करनी पड़ सकती है।
- यदि किसी job में error हो, तो उसे identify करने में समय लग सकता है।
2. Multiprogramming Operating System
Multiprogramming Operating System में एक समय में कई programs को main memory में रखा जा सकता है। जब current program किसी कारण से CPU का उपयोग नहीं कर रहा होता, जैसे I/O operation की प्रतीक्षा कर रहा हो, तब CPU को दूसरे available program को execute करने के लिए उपयोग किया जा सकता है।
इसका मुख्य उद्देश्य CPU utilization को बढ़ाना है।
Example: यदि एक program printer से data आने की प्रतीक्षा कर रहा है, तो Operating System CPU को किसी दूसरे ready program के लिए उपयोग कर सकता है।
3. Multitasking Operating System
Multitasking Operating System user को एक computer पर multiple tasks या applications को concurrently चलाने की सुविधा देता है। Operating System CPU time को विभिन्न processes के बीच schedule करके ऐसा करता है।
Single-core processor में tasks वास्तव में एक ही समय पर execute नहीं होते; CPU बहुत तेजी से processes के बीच switch करता है, जिससे user को tasks simultaneously चलने का अनुभव होता है। Multi-core systems में कुछ tasks वास्तव में parallel भी execute हो सकते हैं।
Example: User एक ही समय में web browser में काम कर सकता है, music चला सकता है और document edit कर सकता है।
4. Multi-user Operating System
Multi-user Operating System ऐसा Operating System है जो multiple users को computer system के resources का उपयोग करने की सुविधा देता है। प्रत्येक user को आवश्यक permissions और resources Operating System द्वारा manage किए जाते हैं।
इस प्रकार के Operating System में security और access control महत्वपूर्ण होते हैं क्योंकि अलग-अलग users के data और resources को व्यवस्थित तरीके से manage करना पड़ता है।
Example: UNIX और Linux जैसे systems multi-user environments को support करते हैं।
5. Multiprocessing Operating System
Multiprocessing Operating System ऐसे computer systems में उपयोग किया जाता है जिनमें दो या दो से अधिक processors या processing cores उपलब्ध होते हैं। Operating System available processors के बीच processes और tasks को distribute करने में सहायता करता है।
इससे system की processing capability और overall performance में सुधार हो सकता है तथा multiple tasks को parallel तरीके से execute करने की क्षमता बढ़ती है।
Example: Multi-core processor वाले modern computers multiprocessing capabilities का उपयोग कर सकते हैं।
6. Real-Time Operating System (RTOS)
Real-Time Operating System (RTOS) ऐसा Operating System है जिसमें tasks को निर्धारित time constraints के भीतर response देना आवश्यक होता है। यहाँ system का केवल result देना ही नहीं, बल्कि सही समय सीमा के भीतर response देना भी महत्वपूर्ण होता है।
RTOS का उपयोग ऐसे systems में किया जाता है जहाँ delayed response system के operation को प्रभावित कर सकता है।
Examples: Industrial control systems, robotics, automotive control systems और कुछ embedded systems में RTOS का उपयोग किया जा सकता है।
Types of Real-Time Systems
Real-time systems को सामान्यतः Hard Real-Time और Soft Real-Time systems के रूप में समझा जाता है।
Hard Real-Time System
Hard Real-Time System में निर्धारित deadline को miss करना गंभीर समस्या मानी जाती है। System को specified time constraint के भीतर response देना आवश्यक होता है।
Example: कुछ safety-critical control systems।
Soft Real-Time System
Soft Real-Time System में deadline महत्वपूर्ण होती है, लेकिन कभी-कभी deadline miss होने पर system पूरी तरह fail नहीं होता। हालांकि performance पर प्रभाव पड़ सकता है।
Soft RT: Deadline महत्वपूर्ण है, लेकिन occasional delay कुछ परिस्थितियों में acceptable हो सकता है।
7. Distributed Operating System
Distributed Operating System interconnected computers के समूह के resources और activities को coordinated तरीके से manage करने के लिए designed होता है। इसमें कई computers मिलकर tasks और resources के management में सहयोग कर सकते हैं।
User को distributed environment एक integrated system की तरह दिखाई देने का उद्देश्य रखा जा सकता है, जबकि underlying resources कई machines पर मौजूद होते हैं।
Example: Distributed computing environments में interconnected computers के बीच processing और resource sharing की आवश्यकता हो सकती है।
8. Network Operating System
Network Operating System (NOS) network से जुड़े computers और उनके shared resources को manage करने के लिए designed Operating System है। यह users को network पर files, printers और अन्य resources share करने जैसी सुविधाएँ प्रदान कर सकता है।
Network Operating System में user accounts, permissions, network services और resource sharing महत्वपूर्ण features हो सकते हैं।
Example: Server-based network environments में network operating system capabilities का उपयोग किया जाता है।
9. Embedded Operating System
Embedded Operating System ऐसे specialized computing devices में उपयोग किया जाता है जहाँ computer system किसी larger device या product के अंदर built-in होता है। यह सामान्य-purpose computer की तुलना में specific functions के लिए designed हो सकता है।
Embedded systems में memory, processing power और power consumption जैसी limitations हो सकती हैं। इसलिए उनका Operating System specific hardware और application requirements के अनुसार optimized हो सकता है।
Examples: Smart appliances, industrial controllers, automotive systems और अन्य embedded devices में embedded operating systems का उपयोग किया जा सकता है।
Comparison of Different Operating Systems
| Type | Main Feature | Typical Use |
|---|---|---|
| Batch OS | Jobs को batches में process करना | Large-scale repetitive processing |
| Multiprogramming OS | Memory में multiple programs रखकर CPU utilization बढ़ाना | General computing environments |
| Multitasking OS | Multiple tasks को concurrently manage करना | Personal computers |
| Multi-user OS | Multiple users को resources उपलब्ध कराना | Servers और shared systems |
| Multiprocessing OS | Multiple processors/cores का उपयोग | High-performance systems |
| Real-Time OS | Time constraints के भीतर response | Control और embedded systems |
| Distributed OS | Multiple computers के resources को coordinate करना | Distributed computing environments |
| Network OS | Network resources और services को manage करना | Networked systems |
| Embedded OS | Dedicated devices के लिए optimized | Embedded devices |
Multiprogramming vs Multitasking
Multiprogramming और multitasking दोनों concepts multiple programs/tasks से संबंधित हैं, लेकिन इनके primary objectives अलग हैं।
| Multiprogramming | Multitasking |
|---|---|
| मुख्य उद्देश्य CPU utilization को बढ़ाना है। | मुख्य उद्देश्य multiple tasks को concurrently चलाने का अनुभव और efficient task management प्रदान करना है। |
| कई programs memory में रखे जाते हैं। | CPU time को विभिन्न active tasks के बीच share किया जाता है। |
| CPU को idle रहने से रोकने पर अधिक focus होता है। | Interactive user experience और task switching पर अधिक focus होता है। |
Multi-user vs Multiprocessing
इन दोनों terms में "multi" शब्द होने के कारण students अक्सर confused होते हैं। Multi-user का संबंध users की संख्या से है, जबकि multiprocessing का संबंध processors या processing cores से है।
| Multi-user | Multiprocessing |
|---|---|
| Multiple users को support करता है। | Multiple processors या processing cores का उपयोग करता है। |
| Focus users और resource access पर होता है। | Focus processing capability पर होता है। |
Multi-user → Multiple Users
Multiprocessing → Multiple Processors/Cores
Multitasking → Multiple Tasks
Multiprogramming → Multiple Programs in Memory
Real-Time OS vs General-Purpose OS
| Real-Time OS | General-Purpose OS |
|---|---|
| Time constraints और predictable response महत्वपूर्ण होते हैं। | General computing tasks और user convenience पर focus होता है। |
| Control और time-sensitive applications में उपयोगी होता है। | Desktop, laptop और सामान्य computing में उपयोग किया जाता है। |
| Response deadline महत्वपूर्ण होती है। | Strict response deadline सामान्यतः primary requirement नहीं होती। |
Important Points
- Operating Systems को उनकी functionality और working characteristics के आधार पर विभिन्न प्रकारों में classify किया जाता है।
- Batch OS jobs को batches में process करता है।
- Multiprogramming OS का मुख्य उद्देश्य CPU utilization को improve करना है।
- Multitasking OS multiple tasks को concurrently manage करता है।
- Multi-user OS multiple users को system resources access करने की सुविधा देता है।
- Multiprocessing OS multiple processors या processing cores का उपयोग करता है।
- Real-Time OS time constraints के भीतर response देने पर focus करता है।
- Distributed OS multiple interconnected computers के resources को coordinate करता है।
- Network OS network resources और services को manage करता है।
- Embedded OS dedicated devices के लिए designed होता है।
Board Focus
Batch OS → Jobs को batches में process करना
Multiprogramming OS → Multiple programs in memory, better CPU utilization
Multitasking OS → Multiple tasks को concurrently manage करना
Multi-user OS → Multiple users को support करना
Multiprocessing OS → Multiple processors/cores का उपयोग
Real-Time OS → Time constraints के भीतर response
Distributed OS → Multiple computers के resources को coordinate करना
Network OS → Network resources को manage करना
Embedded OS → Dedicated devices के लिए designed
Board Important Questions
Very Short Answer Questions
Q1. Operating System के कोई चार प्रकार लिखिए।
Answer: Batch OS, Multiprogramming OS, Multitasking OS और Real-Time OS Operating System के चार प्रकार हैं।
Q2. Batch Operating System क्या है?
Answer: Batch Operating System में similar jobs को batches में collect करके निर्धारित क्रम के अनुसार process किया जाता है।
Q3. Multiprogramming Operating System का मुख्य उद्देश्य क्या है?
Answer: Multiprogramming Operating System का मुख्य उद्देश्य CPU utilization को बढ़ाना है।
Q4. Multitasking Operating System क्या है?
Answer: ऐसा Operating System जो multiple tasks या applications को concurrently manage और execute करने की सुविधा देता है, Multitasking Operating System कहलाता है।
Q5. Multi-user Operating System क्या है?
Answer: ऐसा Operating System जो multiple users को computer system के resources का उपयोग करने की सुविधा देता है, Multi-user Operating System कहलाता है।
Q6. Multiprocessing Operating System क्या है?
Answer: ऐसा Operating System जो multiple processors या processing cores का उपयोग करके processing tasks को execute करने में सहायता करता है, Multiprocessing Operating System कहलाता है।
Q7. RTOS का full form क्या है?
Answer: RTOS का full form Real-Time Operating System है।
Q8. Embedded Operating System क्या है?
Answer: Embedded Operating System dedicated या specialized devices में specific functions को control करने के लिए उपयोग किया जाता है।
Short Answer Questions
Q9. Batch Operating System की विशेषताएँ बताइए।
Answer: Batch Operating System में similar jobs को एक batch में collect किया जाता है और उन्हें निर्धारित क्रम के अनुसार process किया जाता है। इसमें execution के दौरान direct user interaction बहुत कम होता है। यह repetitive और large-scale data processing के लिए useful हो सकता है।
Q10. Multiprogramming और Multitasking Operating System में अंतर बताइए।
| Multiprogramming | Multitasking |
|---|---|
| मुख्य उद्देश्य CPU utilization बढ़ाना है। | Multiple tasks को concurrently manage करना इसका प्रमुख उद्देश्य है। |
| Multiple programs को memory में रखा जाता है। | Active tasks के बीच CPU time share किया जाता है। |
| CPU को idle होने से बचाने पर focus होता है। | Task switching और interactive use पर अधिक focus होता है। |
Q11. Multi-user और Multiprocessing Operating System में अंतर बताइए।
| Multi-user OS | Multiprocessing OS |
|---|---|
| Multiple users को support करता है। | Multiple processors या processing cores का उपयोग करता है। |
| Focus users और resource access पर होता है। | Focus processing और performance पर होता है। |
Q12. Real-Time Operating System क्या है? इसके उपयोग के क्षेत्र लिखिए।
Answer: Real-Time Operating System ऐसा Operating System है जिसमें tasks को निर्धारित time constraints के भीतर response देना आवश्यक होता है। इसका उपयोग industrial control systems, robotics, automotive control systems और अन्य time-sensitive embedded systems में किया जा सकता है।
Long Answer Questions
Q13. Operating System के विभिन्न प्रकारों का वर्णन कीजिए।
Answer: Operating Systems को उनकी working characteristics और requirements के आधार पर विभिन्न प्रकारों में classify किया जाता है। Batch Operating System jobs को batches में process करता है। Multiprogramming Operating System memory में multiple programs रखकर CPU utilization बढ़ाने में सहायता करता है। Multitasking Operating System multiple tasks को concurrently manage करता है। Multi-user Operating System multiple users को system resources access करने की सुविधा देता है। Multiprocessing Operating System multiple processors या processing cores का उपयोग करता है। Real-Time Operating System time constraints के भीतर response देने वाले applications के लिए उपयोगी होता है। Distributed Operating System multiple interconnected computers के resources और processing को coordinate करता है। Network Operating System network resources और services को manage करता है। Embedded Operating System dedicated devices के specific functions के लिए designed होता है।
Q14. Real-Time Operating System को समझाइए। Hard Real-Time और Soft Real-Time System में अंतर बताइए।
Answer: Real-Time Operating System ऐसा Operating System है जिसमें किसी task का result सही होने के साथ-साथ निर्धारित समय सीमा के भीतर प्राप्त होना भी महत्वपूर्ण होता है। Hard Real-Time System में deadline miss होना गंभीर या unacceptable हो सकता है। Soft Real-Time System में deadline महत्वपूर्ण होती है, लेकिन occasional delay होने पर system आवश्यक रूप से fail नहीं होता।
Quick Revision
- Batch OS: Jobs को batches में process करता है।
- Multiprogramming OS: Multiple programs को memory में रखकर CPU utilization बढ़ाता है।
- Multitasking OS: Multiple tasks को concurrently manage करता है।
- Multi-user OS: Multiple users को support करता है।
- Multiprocessing OS: Multiple processors या cores का उपयोग करता है।
- Real-Time OS: Time constraints के भीतर response देता है।
- Distributed OS: Multiple computers के resources को coordinate करता है।
- Network OS: Network resources और services को manage करता है।
- Embedded OS: Dedicated devices में specific functions के लिए उपयोग होता है।
Practice Questions
- Operating System के विभिन्न प्रकारों के नाम लिखिए।
- Batch Operating System क्या है?
- Multiprogramming Operating System का मुख्य उद्देश्य क्या है?
- Multitasking Operating System को उदाहरण सहित समझाइए।
- Multi-user Operating System क्या है?
- Multiprocessing Operating System से आप क्या समझते हैं?
- Real-Time Operating System क्या है?
- Hard Real-Time और Soft Real-Time System में अंतर बताइए।
- Distributed Operating System क्या है?
- Network Operating System और Embedded Operating System को समझाइए।
- Multiprogramming और Multitasking में अंतर लिखिए।
- Multi-user और Multiprocessing में अंतर स्पष्ट कीजिए।
- Operating System के विभिन्न types को उनकी प्रमुख विशेषताओं के साथ समझाइए।