Multiprogramming
Batch programming की सबसे मुख्य समस्या यह है कि इसमें मुख्य memory व CPU का उचित उपयोग नहीं हो पाता है, क्योकि batch program एक के बाद एक execute होते हैं तथा जब एक program चलता रहता है, तब वह पूरी मुख्य memory को घेरे रहता है, जब यह program पूर्ण हो जाता है, तब अगला program memory में load किया जाता है, इस तरह से पूरी memory में हमेशा कोई एक program ही रहता है, किन्तु यह program इतना बड़ा नहीं होता है कि पूरी memory का उपयोग कर सके। इसलिए batch processing में memory का पूर्ण उपयोग नहीं हो पाता है।
तब OS में एक कई तकनीक, multiprogramming को विकसित किया गया। Multiprogramming का अर्थ है एक से ज्यादा programmes का main memory में एक साथ होना जिससे कि CPU अपने समय का उपयोग बहुत से programmes के लिए करे, बजाय सुस्त रहने के (जब एक program हो और वह भी input/output process में शामिल हो। ) यदि एक program को CPU execute कर रहा है, तो दूसरा input/output प्रक्रिया में शामिल है व तीसरा प्रोग्राम CPU की प्रतिक्षा में है,परन्तु यहाँ पर भी CPU सिर्फ एक program को ही एक समय में execute करेगा।
इस तरह से multiprogramming के द्वारा CPU व memory दोनों का उपयोग अच्छे से हो पाता है। प्रोग्राम जो memory में store होते हैं, वे दो तरह के होते हैं-
(i)Input/output bound program
ऐसे program जो कि office या commercial data processing (जिसमें कि record maintain किये जाते हैं ) के लिए बनते हैं, जिसमें input/output data बहुत बड़ी मात्रा में उपलब्ध रहता है, परन्तु computer के द्वारा प्रक्रियाएँ बहुत कम होती हैं, ऐसे program input/output bound based program कहलाता हैं, जो मुख्यतः input/output से जुड़े रहते हैं।
(ii)CPU bound program
कुछ programms जो research, engineering या scientific कार्य के लिए बने होते हैं, उनमें बहुत बड़ी-बड़ी व कठिन calculation होती हैं, किन्तु I/O data बहुत कम होता है, CPU bound program कहलाते हैं। यहाँ CPU का बहुत अधिक उपयोग होता है।
टिप्पणियाँ
एक टिप्पणी भेजें