ओएस में प्रक्रिया शेड्यूलिंग: दीर्घ, मध्यम, लघु अवधि शेड्यूलर

⚡ स्मार्ट सारांश

प्रोसेस शेड्यूलिंग एक ऑपरेटिंग सिस्टम टास्क है जो रेडी, वेटिंग और रनिंग अवस्थाओं में प्रक्रियाओं का प्रबंधन करता है। यह प्रत्येक प्रक्रिया को सीपीयू समय आवंटित करता है, सीपीयू को व्यस्त रखता है और दीर्घकालिक, मध्यम-अवधि और अल्पकालिक शेड्यूलर का उपयोग करके प्रतिक्रिया समय को कम करता है।

  • 🗓️ परिभाषा: प्रोसेस शेड्यूलिंग सीपीयू को व्यस्त रखने के लिए रेडी, वेटिंग और रनिंग अवस्थाओं में प्रक्रियाओं का प्रबंधन करती है।
  • 📥 कतारें: जॉब, रेडी और डिवाइस कतारें प्रक्रियाओं को उनकी निष्पादन स्थिति के आधार पर व्यवस्थित करती हैं।
  • 🔀 दो-राज्य मॉडल: सबसे सरल स्तर पर, कोई प्रक्रिया या तो चल रही होती है या नहीं चल रही होती है।
  • 🧑💼 तीन शेड्यूलर: दीर्घकालिक, मध्यम अवधि और अल्पकालिक शेड्यूलर यह नियंत्रित करते हैं कि कौन सी प्रक्रियाएं कब चलेंगी।
  • लघु अवधि: सीपीयू शेड्यूलर सबसे तेज़ है, जो तत्काल निष्पादन के लिए तैयार प्रक्रिया का चयन करता है।
  • 🔁 संदर्भ स्विच: पीसीबी में सीपीयू की स्थिति को सहेजना और पुनर्स्थापित करना मल्टीटास्किंग को सक्षम बनाता है।

ऑपरेटिंग सिस्टम में प्रोसेस शेड्यूलिंग

प्रक्रिया निर्धारण क्या है?

प्रक्रिया निर्धारण यह एक ऑपरेटिंग सिस्टम टास्क है जो रेडी, वेटिंग और रनिंग जैसी विभिन्न अवस्थाओं की प्रक्रियाओं को शेड्यूल करता है।

प्रोसेस शेड्यूलिंग ऑपरेटिंग सिस्टम को प्रत्येक प्रोसेस के लिए CPU निष्पादन का समय निर्धारित करने की अनुमति देता है। प्रोसेस शेड्यूलिंग सिस्टम का उपयोग करने का एक और महत्वपूर्ण कारण यह है कि यह CPU को हर समय व्यस्त रखता है। इससे प्रोग्रामों के लिए न्यूनतम प्रतिक्रिया समय प्राप्त होता है।

प्रक्रिया निर्धारण कतार

प्रोसेस शेड्यूलिंग क्यूज़ आपको प्रत्येक प्रोसेस स्टेट और पीसीबी के लिए एक अलग क्यू बनाए रखने में मदद करती हैं। एक ही एग्जीक्यूशन स्टेट के सभी प्रोसेस एक ही क्यू में रखे जाते हैं। इसलिए, जब भी किसी प्रोसेस की स्थिति में बदलाव होता है, तो उसके पीसीबी को उसकी मौजूदा क्यू से अलग करके नई स्टेट क्यू में वापस ले जाना पड़ता है।

ऑपरेटिंग सिस्टम कतारें तीन प्रकार की होती हैं:

  1. नौकरी कतार – यह आपको सिस्टम में सभी प्रक्रियाओं को संग्रहीत करने में मदद करता है।
  2. तैयार कतार - इस प्रकार की कतार आपको मुख्य मेमोरी में स्थित प्रत्येक प्रक्रिया को सेट करने में मदद करती है, जो तैयार है और निष्पादन के लिए प्रतीक्षा कर रही है।
  3. डिवाइस कतारें - यह एक ऐसी प्रक्रिया है जो I/O डिवाइस की अनुपस्थिति के कारण अवरुद्ध हो जाती है।
प्रक्रिया निर्धारण कतार
प्रक्रिया निर्धारण कतार

ऊपर दिए गए चित्र में:

  • एक आयत कतार को दर्शाता है।
  • एक वृत्त संसाधन को दर्शाता है।
  • तीर प्रक्रिया के प्रवाह को दर्शाता है।
  1. प्रत्येक नई प्रक्रिया को सबसे पहले रेडी क्यू में रखा जाता है। यह रेडी क्यू में तब तक प्रतीक्षा करती है जब तक कि इसे निष्पादन के लिए अंतिम रूप से संसाधित नहीं किया जाता। यहां, नई प्रक्रिया को रेडी क्यू में रखा जाता है और तब तक प्रतीक्षा करती है जब तक कि इसे निष्पादन के लिए चुना नहीं जाता, या इसे भेजा नहीं जाता।
  2. एक प्रक्रिया को सीपीयू आवंटित किया गया है और वह निष्पादित हो रही है।
  3. इस प्रक्रिया को एक इनपुट/आउटपुट अनुरोध जारी करना चाहिए।
  4. फिर, इसे इनपुट/आउटपुट कतार में रखा जाना चाहिए।
  5. इस प्रक्रिया से एक नई उप-प्रक्रिया उत्पन्न होनी चाहिए।
  6. प्रक्रिया को अपनी समाप्ति की प्रतीक्षा करनी चाहिए।
  7. इंटरप्ट के परिणामस्वरूप इसे सीपीयू से जबरदस्ती हटा दिया जाना चाहिए। इंटरप्ट पूरा होने के बाद, इसे रेडी क्यू में वापस भेज दिया जाना चाहिए।

दो राज्य प्रक्रिया मॉडल

दो-अवस्था प्रक्रिया मॉडल हैं:

  • रनिंग स्टेट
  • चालू स्थिति नहीं

रनिंग

में Operaचीज़ प्रणालीजब भी कोई नई प्रक्रिया बनाई जाती है, तो उसे सिस्टम में दर्ज कर दिया जाता है, जिसे चलना चाहिए।

चल नहीं रहा

जो प्रक्रियाएं चल नहीं रही हैं, उन्हें एक कतार में रखा जाता है, जो अपनी बारी आने का इंतजार करती है। कतार में प्रत्येक प्रविष्टि एक विशिष्ट प्रक्रिया को इंगित करती है।

शेड्यूलिंग उद्देश्य

प्रक्रिया निर्धारण के महत्वपूर्ण उद्देश्य निम्नलिखित हैं:

  • स्वीकार्य प्रतिक्रिया समय के भीतर इंटरैक्टिव उपयोगकर्ताओं की संख्या को अधिकतम करें।
  • प्रतिक्रिया और उपयोग के बीच संतुलन प्राप्त करें।
  • अनिश्चितकालीन स्थगन से बचें और प्राथमिकताएं लागू करें।
  • इसमें प्रमुख संसाधनों को धारण करने वाली प्रक्रियाओं का भी संदर्भ दिया जाना चाहिए।

प्रक्रिया अनुसूचकों के प्रकार

शेड्यूलर एक प्रकार का सिस्टम सॉफ्टवेयर है जो आपको प्रक्रिया शेड्यूलिंग को संभालने की अनुमति देता है।

प्रक्रिया अनुसूचक मुख्यतः तीन प्रकार के होते हैं:

  1. दीर्घकालीन अनुसूचक
  2. अल्पावधि अनुसूचक
  3. मध्यम अवधि अनुसूचक

दीर्घकालीन अनुसूचक

लॉन्ग टर्म शेड्यूलर को इस नाम से भी जाना जाता है नौकरी अनुसूचकयह शेड्यूलर प्रोग्राम को नियंत्रित करता है और कतार से प्रक्रियाओं का चयन करके उन्हें निष्पादन के लिए मेमोरी में लोड करता है। यह मल्टी-प्रोग्रामिंग की सीमा को भी नियंत्रित करता है।

हालांकि, इस प्रकार के शेड्यूलर का मुख्य लक्ष्य प्रोसेसर और आई/ओ जॉब्स जैसे कार्यों का संतुलित मिश्रण प्रदान करना है, जो मल्टीप्रोग्रामिंग के प्रबंधन की अनुमति देता है।

मध्यम अवधि अनुसूचक

मध्यम अवधि का शेड्यूलिंग इसका एक महत्वपूर्ण हिस्सा है विनिमयpingयह आपको स्वैप-आउट प्रक्रियाओं को संभालने में सक्षम बनाता है। इस शेड्यूलर में, एक चल रही प्रक्रिया निलंबित हो सकती है, जिससे एक I/O अनुरोध उत्पन्न होता है।

यदि कोई चालू प्रक्रिया इनपुट/आउटपुट अनुरोध करती है, तो वह निलंबित हो सकती है। निलंबित प्रक्रिया पूर्णता की ओर कोई प्रगति नहीं कर सकती। प्रक्रिया को मेमोरी से हटाने और अन्य प्रक्रियाओं के लिए स्थान बनाने के लिए, निलंबित प्रक्रिया को द्वितीयक संग्रहण में स्थानांतरित किया जाना चाहिए।

अल्पावधि अनुसूचक

अल्पकालिक शेड्यूलिंग को इस नाम से भी जाना जाता है सीपीयू अनुसूचकइस शेड्यूलर का मुख्य उद्देश्य निर्धारित मानदंडों के अनुसार सिस्टम के प्रदर्शन को बेहतर बनाना है। यह आपको निष्पादन के लिए तैयार प्रक्रियाओं के समूह में से चयन करने और उनमें से किसी एक को CPU आवंटित करने में मदद करता है। डिस्पैचर, शॉर्ट टर्म शेड्यूलर द्वारा चयनित प्रक्रिया को CPU का नियंत्रण सौंप देता है।

अनुसूचकों के बीच अंतर

दीर्घकालिक बनाम अल्पकालिक बनाम मध्यम अवधि:

दीर्घावधि लघु अवधि मध्यम अवधि
लॉन्ग टर्म को जॉब शेड्यूलर के नाम से भी जाना जाता है। शॉर्ट टर्म को सीपीयू शेड्यूलर के नाम से भी जाना जाता है। मध्यम अवधि को स्वैप भी कहा जाता हैping अनुसूचक।
टाइम-शेयरिंग प्रणाली में यह या तो अनुपस्थित है या न्यूनतम है। समय-साझाकरण क्रम में यह महत्वहीन है। यह अनुसूचक समय-साझाकरण प्रणाली का एक तत्व है।
अल्पावधि अनुसूचक की तुलना में गति कम है। अल्पकालिक और मध्यम अवधि अनुसूचक की तुलना में गति सबसे तेज़ है। यह मध्यम गति प्रदान करता है।
यह आपको लोड और पूल से प्रक्रियाओं का चयन करने और उन्हें वापस मेमोरी में लाने की अनुमति देता है। यह केवल उन्हीं प्रक्रियाओं का चयन करता है जो निष्पादन के लिए तैयार स्थिति में हैं। यह आपको प्रक्रिया को वापस मेमोरी में भेजने में मदद करता है।
पूर्ण नियंत्रण प्रदान करता है। कम नियंत्रण प्रदान करता है। मल्टीप्रोग्रामिंग के स्तर को कम करता है।

संदर्भ स्विच क्या है?

यह पीसीबी में सीपीयू की स्थिति को संग्रहित/पुनर्स्थापित करने की एक विधि है, जिससे प्रक्रिया निष्पादन को बाद में उसी बिंदु से पुनः शुरू किया जा सके। मल्टीटास्किंग ऑपरेटिंग सिस्टम के लिए कॉन्टेक्स्ट स्विचिंग विधि महत्वपूर्ण है।

अक्सर पूछे जाने वाले प्रश्न

एक शेड्यूलर किसी नीति के आधार पर यह तय करता है कि अगला कौन सा प्रोसेस चलना चाहिए। डिस्पैचर वह मॉड्यूल है जो वास्तव में चुने हुए प्रोसेस को CPU का नियंत्रण देता है, कॉन्टेक्स्ट स्विच करता है और जंप करता है।ping प्रोग्राम में सही स्थान पर।

मल्टीप्रोग्रामिंग की डिग्री एक ही समय में मुख्य मेमोरी में मौजूद प्रक्रियाओं की संख्या है। दीर्घकालिक शेड्यूलर यह तय करके इसे नियंत्रित करता है कि कितनी प्रक्रियाओं को अनुमति दी जाए, और कुशल सिस्टम प्रदर्शन के लिए CPU और I/O उपयोग को संतुलित करता है।

प्रोसेस कंट्रोल ब्लॉक एक डेटा संरचना है जिसका उपयोग ऑपरेटिंग सिस्टम (OS) किसी प्रोसेस के बारे में सभी जानकारी, जैसे उसकी स्थिति, प्रोग्राम काउंटर, रजिस्टर और मेमोरी सीमाएँ, को संग्रहीत करने के लिए करता है। कॉन्टेक्स्ट स्विच के दौरान प्रोसेस को सहेजने और पुनर्स्थापित करने के लिए यह आवश्यक है।

कृत्रिम बुद्धिमत्ता (AI) कार्यभार के पैटर्न को समझकर यह तय कर सकती है कि कौन सी प्रक्रिया चलानी है और CPU समय का आवंटन कैसे करना है। निश्चित नियमों के बजाय, यह वास्तविक समय में शेड्यूलिंग को अनुकूलित करती है, जिससे थ्रूपुट, प्रतिक्रिया समय और ऊर्जा दक्षता में सुधार होता है, विशेष रूप से क्लाउड और मल्टी-कोर सिस्टम में।

जी हां। पिछले सीपीयू उपयोग और इनपुट/आउटपुट पैटर्न का विश्लेषण करके, एआई मॉडल यह अनुमान लगा सकते हैं कि कोई प्रक्रिया कितने समय तक चलेगी और क्या वह सीपीयू-आधारित है या इनपुट/आउटपुट-आधारित। ये अनुमान शेड्यूलर को प्रक्रियाओं को प्राथमिकता देने और प्रतीक्षा समय को कम करने में मदद करते हैं।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: