What is Multiprogramming:
MultiProgramming का शाब्दिक अर्थ है एक से अधिक programs से होता है। वर्तमान में हम किसी CPU पर एक से अधिक प्रोग्राम रन करा सकते हैं। इस बात का पालन करते हुए कि जब पहला program recent में CPU का उपयोग न कर रहा हो तब दूसरा program execute हो एवं इसी प्रकार पहला व दूसरा program recent में CPU का उपयोग न कर रहा हो तब तीसरा प्रोग्राम execute होता है। इस प्रक्रिया को multi programming कहते हैं।
Multiprogramming system |
Multiprogramming में operation system के द्वारा एक समय में एक से अधिक जॉब को process किया जाता है। इस प्रकार के operating system का मुख्य लाभ यह है कि इसके प्रयोग से processor के idle process को कम किया जा सकता है। वर्तमान में उपलब्ध लगभग सभी operating system, multiprogramming होते हैं।
इस तकनीक के प्रयोग का मुख्य लाभ यह है कि इससे resource का पूरा उपयोग होता है। इस तकनीक के आ जाने से कार्य में गतिशीलता का समावेश हुआ है। समय-समय पर इसमें कुछ परिवर्तन किए जाते रहे हैं, जो निम्न हैं:
i) Resource utilization:
पहले ऐसा होता था कि किसी ने कोई program या application run कराएं है और अब उसमें उपयोगकर्ता input की आवश्यकता पड़ रही है अर्थात् बाहरी interruption की आवश्यकता पड़ रही है और यदि operator अभी व्यस्त है तब वह इनपुट नहीं देगा इस स्थिति में दूसरे application/program को first application/program की प्रतिक्षा करना पड़ेगा। इस प्रकार resource होने के बावजूद उसका सदुपयोग नहीं हो पाता। इस कमी को multi programming द्वारा दूर किया जा सकता है।
ii) Time Saving:
यह time save करने के उद्देश्य की पूर्ति करता है। क्योंकि यदि आपकी पूरी क्षमता resource से प्रयोग होता है तो स्वभाविक है कि time saving होगा ।
iii) Expenditure में कमी करना ।
iv) Complex program execute करने के लिए।
Read Also
- WHAT IS SYSTEM BOOT, TYPES OF BOOTING AND IT'S STEPS | BOOTING IN OPERATING SYSTEM
- SYSTEM CALL क्या है ? इसके प्रकार एवं कार्य | SYSTEM CALL IN OPERATING SYSTEM
Types of Multiprogramming Operating System
multi programming दो प्रकार के होते हैं
- Multi Tasking Operating System
- Multi Users Operating System
1. Multitasking Operating System
Multitasking एक सिस्टम है जिसमें एक से अधिक task को एक ही समय में पूरा करना होता है। real time application के लिए time share approach उपयोगी नहीं होता है। क्योंकि multi-user application में अनेक जॉब की processing time उनके priority के आधार पर होती है।
अर्थात् अधिक priority वाले जॉब की processing पहले होती है। इसके low priority वाले जॉब में बाधा पहुँचता है। कुछ ऐसी मशीन भी होती है जो विभिन्न जॉब को एक के बाद एक (simultaneously) process करता है जिसे multitasking कहते हैं।
एक ऑपरेटिंग सिस्टम में, मल्टीटास्किंग एक उपयोगकर्ता को एक साथ एक से अधिक कंप्यूटर कार्य करने की अनुमति देता है, जिससे की यहाँ CPU का बहुत ज्यादा यूज़ होता है और कंप्यूटर सिस्टम slow काम करता है।
Multitasking करने में सक्षम होने का मतलब यह नहीं है कि एक ही समय में unlimited कार्य किए जा सकते हैं। प्रत्येक कार्य storage और अन्य resources का use करता है। जैसे-जैसे अधिक कार्य प्रारंभ होते हैं, system slow हो सकता है या shared storage समाप्त हो सकता है।
2. Multiuser Operating System
wikipedia के अनुशार - मल्टी-यूजर operating system कंप्यूटर सॉफ्टवेयर है जो कंप्यूटर के कई यूजर्स को एक्सेस की अनुमति देता है। Time Sharing system multiuser system हैं। mainframe कंप्यूटरों के लिए अधिकांश बैच processing systems को "मल्टी-यूजर" भी माना जा सकता है, ताकि सीपीयू के I/O ऑपरेशंस के पूरा होने की प्रतीक्षा करते समय निष्क्रिय रहने से बचा जा सके।
Operating system टर्मिनलों के बीच इतनी तेज़ी से बदलता है कि प्रत्येक users को केंद्रीय कंप्यूटर तक निरंतर पहुंच प्राप्त होती है। यदि इस तरह के सिस्टम पर कई उपयोगकर्ता हैं, तो केंद्रीय कंप्यूटर को response देने में अधिक समय लग सकता है।
Advantage of Multiprogramming
- Always prevent deadlock की स्थिति को रोकना।
- हमेशा resource का उपयोग एवं unwire के status को maintain करना।
- Resource यदि instruction अर्थात् user input का Wait कर रहा है तो waiting list वाली application को resource को उपलब्ध कराना।
- Execution accuracy एवं timing का analysis करना।
- Multiprogramming technology का analysis व error/bug आने पर reporting करना।
- Multiprogramming technology में सुधार करना और उपयुक्त बनाने का प्रयास करना ।
- Memory का पूर्ण रूप से प्रयोग होता है।
- CPU के खाली रहने की प्रक्रिया को कम किया जा सकता Job के processing में पढ़ने के समय को कम किया जा सकता है।
- यदि operating system कुछ कार्य कर रहा है तो उससे किसी अन्य कार्य को कराने के लिए इंतजार नहीं करना पड़ता।
Disadvantage of Multiprogramming
- चूंकि इसमें एक से अधिक program एक साथ process होता रहता है इसलिए सभी को एक cash memory में रखना होता है जिससे उन पर दबाव बढ़ता है।
- ये काफी परिष्कृत एवं जटिल होते हैं।
0 Comments