राउंड रॉबिन शेड्यूलिंग एल्गोरिदम उदाहरण के साथ
राउंड-रॉबिन शेड्यूलिंग क्या है?
इस एल्गोरिथ्म का नाम राउंड-रॉबिन सिद्धांत से आया है, जहाँ प्रत्येक व्यक्ति को बारी-बारी से किसी चीज़ का बराबर हिस्सा मिलता है। यह सबसे पुराना, सरल शेड्यूलिंग एल्गोरिदम है, जिसका ज़्यादातर इस्तेमाल मल्टीटास्किंग के लिए किया जाता है।
राउंड-रॉबिन शेड्यूलिंग में, प्रत्येक तैयार कार्य एक सीमित समय स्लाइस के लिए केवल एक चक्रीय कतार में बारी-बारी से चलता है। यह एल्गोरिथ्म प्रक्रियाओं का भुखमरी मुक्त निष्पादन भी प्रदान करता है।
राउंड-रॉबिन शेड्यूलिंग की विशेषताएं
राउंड-रॉबिन शेड्यूलिंग की महत्वपूर्ण विशेषताएं इस प्रकार हैं:
- राउंड रॉबिन एक पूर्व-प्रतिक्रियाशील एल्गोरिथ्म है
- निश्चित अंतराल के बाद सीपीयू को अगली प्रक्रिया में स्थानांतरित कर दिया जाता है, जिसे टाइम क्वांटम/टाइम स्लाइस कहा जाता है।
- जिस प्रक्रिया को रोका जाता है उसे कतार के अंत में जोड़ दिया जाता है।
- राउंड रॉबिन एक हाइब्रिड मॉडल है जो घड़ी द्वारा संचालित होता है
- टाइम स्लाइस न्यूनतम होना चाहिए, जिसे किसी विशिष्ट कार्य के लिए असाइन किया जाता है जिसे संसाधित करने की आवश्यकता होती है। हालाँकि, यह OS से OS में भिन्न हो सकता है।
- यह एक वास्तविक समय एल्गोरिथ्म है जो एक विशिष्ट समय सीमा के भीतर घटना पर प्रतिक्रिया करता है।
- राउंड रॉबिन सबसे पुराने, निष्पक्ष और आसान एल्गोरिदम में से एक है।
- पारंपरिक ओएस में व्यापक रूप से प्रयुक्त शेड्यूलिंग विधि।
राउंड-रॉबिन शेड्यूलिंग का उदाहरण
निम्नलिखित तीन प्रक्रियाओं पर विचार करें
प्रक्रिया कतार | बर्स्ट टाइम |
---|---|
P1 | 4 |
P2 | 3 |
P3 | 5 |
चरण 1) निष्पादन प्रक्रिया P1 से शुरू होता है, जिसका बर्स्ट समय 4 है। यहाँ, प्रत्येक प्रक्रिया 2 सेकंड के लिए निष्पादित होती है। P2 और P3 अभी भी प्रतीक्षा कतार में हैं।
चरण 2) समय =2 पर, P1 को कतार के अंत में जोड़ दिया जाता है और P2 निष्पादित करना शुरू कर देता है
चरण 3) समय=4 पर, P2 को पहले से ही हटा दिया जाता है और कतार के अंत में जोड़ दिया जाता है। P3 निष्पादन शुरू करता है।
चरण 4) समय=6 पर, P3 को पहले से ही हटा दिया जाता है और कतार के अंत में जोड़ दिया जाता है। P1 निष्पादन शुरू करता है।
चरण 5) समय=8 पर, P1 का बर्स्ट समय 4 है। इसने निष्पादन पूरा कर लिया है। P2 निष्पादन शुरू करता है
चरण 6) P2 का बर्स्ट समय 3 है। यह पहले ही 2 अंतराल के लिए निष्पादित हो चुका है। समय = 9 पर, P2 निष्पादन पूरा करता है। फिर, P3 निष्पादन शुरू करता है जब तक कि यह पूरा न हो जाए।
चरण 7) आइये उपरोक्त उदाहरण के लिए औसत प्रतीक्षा समय की गणना करें।
Wait time P1= 0+ 4= 4 P2= 2+4= 6 P3= 4+3= 7
राउंड-रॉबिन शेड्यूलिंग का लाभ
राउंड-रॉबिन शेड्यूलिंग विधि के पक्ष/लाभ इस प्रकार हैं:
- इसे भुखमरी या काफिले के प्रभाव की समस्या का सामना नहीं करना पड़ता है।
- सभी नौकरियों को सीपीयू का उचित आवंटन मिलता है।
- यह बिना किसी प्राथमिकता के सभी प्रक्रियाओं से निपटता है
- यदि आप रन कतार पर प्रक्रियाओं की कुल संख्या जानते हैं, तो आप उसी प्रक्रिया के लिए सबसे खराब स्थिति प्रतिक्रिया समय का भी अनुमान लगा सकते हैं।
- यह शेड्यूलिंग विधि बर्स्ट समय पर निर्भर नहीं करती है। इसलिए इसे सिस्टम पर आसानी से लागू किया जा सकता है।
- एक बार जब कोई प्रक्रिया एक निश्चित अवधि के लिए निष्पादित हो जाती है, तो उस प्रक्रिया को रोक दिया जाता है, तथा उस निश्चित समय अवधि के लिए कोई अन्य प्रक्रिया निष्पादित होती है।
- ओएस को पूर्वनिर्धारित प्रक्रियाओं की स्थिति को सहेजने के लिए संदर्भ स्विचिंग विधि का उपयोग करने की अनुमति देता है।
- यह औसत प्रतिक्रिया समय के संदर्भ में सर्वोत्तम प्रदर्शन देता है।
राउंड-रॉबिन शेड्यूलिंग के नुकसान
राउंड-रॉबिन शेड्यूलिंग के उपयोग की कमियां/नुकसान इस प्रकार हैं:
- यदि OS का स्लाइसिंग समय कम है, तो प्रोसेसर आउटपुट कम हो जाएगा।
- यह विधि संदर्भ स्विचिंग पर अधिक समय खर्च करती है
- इसका प्रदर्शन काफी हद तक समय की मात्रा पर निर्भर करता है।
- प्रक्रियाओं के लिए प्राथमिकताएं निर्धारित नहीं की जा सकतीं।
- राउंड-रॉबिन शेड्यूलिंग में अधिक महत्वपूर्ण कार्यों को विशेष प्राथमिकता नहीं दी जाती।
- समझ कम हो जाती है
- कम समय क्वांटम के परिणामस्वरूप सिस्टम में संदर्भ स्विचिंग ओवरहेड अधिक होता है।
- इस प्रणाली में सही समय क्वांटम का पता लगाना काफी कठिन कार्य है।
सबसे खराब स्थिति विलंबता
इस शब्द का प्रयोग सभी कार्यों के निष्पादन में लगने वाले अधिकतम समय के लिए किया जाता है।
- dt = किसी कार्य को सूची में लाने पर पता लगाने का समय दर्शाता है
- st = एक कार्य से दूसरे कार्य पर स्विच करने का समय दर्शाएं
- et = कार्य निष्पादन समय को दर्शाता है
फॉर्मूला:
Tworst = {(dti+ sti + eti ), + (dti+ sti + eti )2 +...+ (dti+ sti + eti )N., + (dti+ sti + eti + eti) N} + tISR t,SR = sum of all execution times
सारांश
- इस एल्गोरिथम का नाम राउंड-रॉबिन सिद्धांत से आया है, जहां प्रत्येक व्यक्ति को बारी-बारी से किसी चीज़ का बराबर हिस्सा मिलता है।
- राउंड रॉबिन सबसे पुराने, सबसे निष्पक्ष और सबसे आसान एल्गोरिदम में से एक है और पारंपरिक में व्यापक रूप से इस्तेमाल की जाने वाली शेड्यूलिंग विधि है OS.
- राउंड रॉबिन एक पूर्व-प्रतिक्रियाशील एल्गोरिथ्म है
- राउंड-रॉबिन शेड्यूलिंग विधि का सबसे बड़ा लाभ यह है कि यदि आप रन कतार पर प्रक्रियाओं की कुल संख्या जानते हैं, तो आप उसी प्रक्रिया के लिए सबसे खराब स्थिति प्रतिक्रिया समय का भी अनुमान लगा सकते हैं।
- यह विधि संदर्भ स्विचिंग पर अधिक समय खर्च करती है
- सबसे खराब स्थिति विलंबता वह शब्द है जिसका उपयोग सभी कार्यों के निष्पादन में लगने वाले अधिकतम समय के लिए किया जाता है।