Operating System Tasks In Real Time System
रियल-टाइम सिस्टम में कार्यों के प्रकार
रियल-टाइम सिस्टम की विशेषता उनकी कठोर समय-सीमाओं से होती है। रियल-टाइम सिस्टम में कार्यों को दो व्यापक श्रेणियों में वर्गीकृत किया जा सकता है:
1. नियमित कार्य
नियमित कार्य वे होते हैं जो नियमित अंतराल पर निष्पादित होते हैं। एक नियमित कार्य की अवधि दो संयुक्त निष्पादनों के बीच का समय होता है। नियमित कार्यों का उपयोग अक्सर नियंत्रण प्रणाली को लागू करने के लिए किया जाता है, जैसे कि रोबोटिक्स और विनिर्माण में इस्तेमाल होने वाले कार्यों में।
2. अनियमित कार्य
अनियमित कार्य वे होते हैं जिनके पास नियमित निष्पादन पैटर्न नहीं होता है। अनियमित कार्यों को बाहरी घटनाओं, जैसे संदेश के आगमन या संवेदक पठन के होने के कारण ट्रिगर किया जा सकता है। अनियमित कार्यों का उपयोग अक्सर इवेंट-मुख प्रणालियों को लागू करने के लिए किया जाता है, जैसे कि उपयोगकर्ता इंटरफ़ेस और संचार प्रणालियों में।
नियमित और अनियमित कार्यों के अलावा, रियल-टाइम सिस्टम में सन्दिग्ध कार्य भी शामिल हो सकते हैं। सन्दिग्ध कार्य वे होते हैं जो अनियमित अंतरालों पर होते हैं, लेकिन ज्ञात न्यूनतम इंटर-आगमन समय के साथ। सन्दिग्ध कार्यों का उपयोग अक्सर खराबी-सहिष्णु सिस्टमों को लागू करने के लिए किया जाता है, जैसे मेडिकल उपकरण और विमानन में इस्तेमाल होने वाले कार्यों में।
रियल-टाइम कार्यों की विशेषताएं
रियल-टाइम कार्यों में कई विशेषताएं होती हैं जो इन्हें पारंपरिक ऑपरेटिंग सिस्टम में कार्यों से अलग करती हैं। इन विशेषताओं में शामिल हैं:
- समयिकता: रियल-टाइम कार्यों को उनकी समय सीमा को पूरा करने के लिए पूरा किया जाना चाहिए।
- पूर्वानुमानयोग्यता: रियल-टाइम कार्यों का निष्पादन समय पूर्वानुमानयोग्य होना चाहिए ताकि यह सुनिश्चित हो सके कि वे अपनी समय सीमाओं को पूरा करें।
- विश्वसनीयता: रियल-टाइम कार्यों को विश्वसनीय होना चाहिए ताकि संगणना प्रणाली खराबियों के मौजूद होने पर भी सही ढंग से काम करें।
- खराबी-सहिष्णुता: रियल-टाइम कार्यों को खराबियों को सहने की क्षमता रखनी चाहिए ताकि संगणना प्रणाली खराबियों के मौजूद होने पर भी सही ढंग से काम करें, चाहे वे हार्डवेयर या सॉफ़्टवेयर की विफलताओं की हों।
रियल-टाइम कार्यों का अनुसूचीत करना
रियल-टाइम कार्यों का अनुसूचीत करना एक चुनौतीपूर्ण समस्या है। अनुसूचीत करने का लक्ष्य है कि सभी समयसीमा पूर्ण करने के लिए कार्यों को प्रोसेसरों को सौंपा जाए। रियल-टाइम सिस्टम के लिए कई विभिन्न अनुसूचीत करने के एल्गोरिदम हो सकते हैं। अनुसूचीत करने के एल्गोरिदम के चयन परिस्थितियों की विशेष आवश्यकताओं पर निर्भर करता है।
रियल-टाइम सिस्टम रोबोटिक्स, विनिर्माण, मेडिकल उपकरण और विमानन जैसे विभिन्न अनुप्रयोगों में उपयोग होते हैं। रियल-टाइम सिस्टम में कार्यों में कई विशेषताएं होती हैं जो इन्हें पारंपरिक ऑपरेटिंग सिस्टम में कार्यों से अलग करती हैं। इन विशेषताओं में समयिकता, पूर्वानुमानयोग्यता, विश्वसनीयता और खराबी-सहिष्णुता शामिल हैं। रियल-टाइम कार्यों को अनुसूचीत करना एक चुनौतीपूर्ण समस्या है, लेकिन यहां रियल-टाइम सिस्टम के आवश्यकताओं को पूरा करने के लिए कई विभिन्न अनुसूचीत करने के एल्गोरिदम हैं।
1. आवधिक कार्य
आवधिक कार्य वे हैं जो नियमित अंतराल में कार्यान्वित होते हैं। आवधिक कार्य के दो लगातार कार्यान्वयनों के बीच का समय उसकी अवधि कहलाता है। आवधिक कार्य आमतौर पर नियंत्रण प्रणाली को कार्यान्वित करने के लिए उपयोग किए जाते हैं, जहां सिस्टम की स्थिति का नमूना लिया जाना और नियंत्रण उत्पाद की गणना नियमित अंतराल में करना आवश्यक होता है।
2. अवकाशीय कार्य
अवकाशीय कार्य वे हैं जिनमें नियमित कार्यान्वयन पैटर्न नहीं होता है। इन्हें बाहरी घटनाओं द्वारा ट्रिगर किया जा सकता है, जैसे कि संदेश की पहुंच या बीमारी की घटना। अवकाशीय कार्य आमतौर पर घटना-मुखित प्रणालियों को कार्यान्वित करने के लिए उपयोग किए जाते हैं, जहां उचित समय में घटनाओं का प्रतिक्रिया करना आवश्यक होता है।
इन दो व्यापक श्रेणियों के अलावा, वास्तविक समय प्रणालीयों में आपको कई अन्य प्रकार के कार्यों से भी पता चल सकते हैं, जिनमें शामिल हैं:
- स्पोरेडिक कार्य: स्पोरेडिक कार्य अवकाशीय कार्यों से मिलते-जुलते हैं, लेकिन उनके पास न्यूनतम आगमन समय होता है। इसका अर्थ है कि स्पोरेडिक कार्य के दो लगातार कार्यान्वयनों के बीच एक न्यूनतम समय बितना होता है।
- डेडलाइन-नियोजित कार्य: डेडलाइन-नियोजित कार्य वे हैं जो निर्दिष्ट डेडलाइन से पहले अपनी कार्यान्वयन पूर्ण करने के लिए होते हैं। यदि डेडलाइन-नियोजित कार्य अपनी डेडलाइन से पहले नहीं पूर्ण होते हैं, तो उन्हें असफल माना जाता है।
- मध्यम वास्तविक समय कार्य: मध्यम वास्तविक समय कार्य वे हैं जिनमें एक चाहिते हुए कार्यान्वयन समय होता है, लेकिन वे कभी-कभी रुकावट वाले डेडलाइन को सहन कर सकते हैं।
- कठिन वास्तविक समय कार्य: कठिन वास्तविक समय कार्य वे हैं जो अंतिम दिनांक से पहले अपना कार्यान्वयन पूर्ण करना होता है, सभी परिस्थितियों में। यदि कठिन वास्तविक समय कार्य अपनी दिनांक से पहले नहीं पूर्ण होता है, तो उन्हें असफल माना जाता है।
वास्तविक समय प्रणाली में उपयोग होने वाले कार्य के प्रकार सिस्टम की विशेष आवश्यकताओं पर निर्भर करते हैं। उदाहरण के लिए, एक नियंत्रण प्रणाली आमतौर पर आवधिक कार्यों का उपयोग करेगी, जबकि एक घटना-मुखित प्रणाली आमतौर पर अवकाशीय कार्यों का उपयोग करेगी।
निष्कर्ष
वास्तविक समय प्रणालियाँ कौशलशील तथ्यतः जो कि सत्यापन के लिए सतर्क निर्माण और कार्यान्वयन की आवश्यकता होती हैं। सिस्टम में उपयोग होने वाले कार्यों का प्रकार एक महत्वपूर्ण कारक होता है जो सिस्टम के प्रदर्शन और विश्वसनीयता को निर्धारित करता है।
कार्य कार्यान्वयन
कार्य कार्यान्वयन उपयोग की जाने वाली संसाधनों को कार्यों में आवंटित करने की प्रक्रिया है ताकि उन संसाधनों का उपयोग समयगत और कुशल ढंग से किया जा सके। यह ऑपरेटिंग सिस्टम का एक महत्वपूर्ण घटक है, क्योंकि यह सुनिश्चित करता है कि कार्य समय पर और कुशल ढंग से पूरा हो जाते हैं।
कार्य कार्यान्वयन के प्रकार
कार्य कार्यान्वयन के दो मुख्य प्रकार हैं:
- निरुद्ध कार्यान्वयन: एक बार जब कार्य को संसाधन को आवंटित कर दिया गया है, तो यह अन्य कार्य द्वारा छीना नहीं जा सकता है, चाहे दूसरा कार्य उच्चतम प्राथमिकता रखता हो या नहीं।
- निरुद्ध कार्यान्वयन: एक कार्य उच्चतम प्राथमिकता रखने के द्वारा अन्य कार्य के द्वारा छीना जा सकता है, चाहे पहला कार्य अभी भी चल रहा हो या नहीं।
कार्य कार्यान्वयन एल्गोरिदम
कार्यों को संसाधनों में आवंटित करने के लिए विभिन्न कार्य कार्यान्वयन एल्गोरिदम का उपयोग किया जा सकता है। कुछ सबसे सामान्य एल्गोरिदम में शामिल हैं:
- पहले आए, पहले सेवा (FCFS): जो पहले टास्क सिस्टम में आता है, वही पहले टास्क को निष्पादित किया जाता है।
- सबसे छोटा जॉब पहले (SJF): सबसे कम समय में समाप्त होने वाले टास्क को पहले निष्पादित किया जाता है।
- प्राथमिकता अनुसार योजना: टास्कों को प्राथमिकताएं दी जाती हैं, और सबसे उच्च प्राथमिकता वाले टास्क को पहले निष्पादित किया जाता है।
- राउंड-रॉबिन योजना: टास्कों को राउंड-रॉबिन प्रकार में निष्पादित किया जाता है, प्रत्येक टास्क को निष्पादित करने के लिए एक निश्चित समय का उद्देश्य दिया जाता है, जब अगले टास्क द्वारा रोक दिया जाता है।
टास्क योजना को प्रभावित करने वाले कारक
टास्क योजना को प्रभावित करने वाले कई कारक होते हैं, जिनमें शामिल हैं:
- सिस्टम में टास्कों की संख्या: सिस्टम में जितने अधिक टास्क होंगे, उन्हें सही ढंग से योजित करना उतना ही कठिन होगा।
- टास्कों की संसाधन आवश्यकताएं: टास्क जितने अधिक संसाधनों की आवश्यकता होती है, उसे सही ढंग से योजित करना उतना ही कठिन होगा।
- टास्कों के आगमन समय: टास्क जब सिस्टम में आएगा, तब योजनाबद्धता एल्गोरिदम के कार्यक्षमता पर असर पड़ सकता है।
- टास्कों की प्राथमिकता: टास्कों की प्राथमिकताएं योजनाबद्धता एल्गोरिदम की कार्यक्षमता पर असर डाल सकती हैं।
टास्क योजना, संचालन-प्रणालियों का एक महत्वपूर्ण घटक है। टास्क योजना को प्रभावित करने वाले कारकों को सावधानीपूर्वक विचार करके, संसाधनों का उपयोग करने और सुनिश्चित करने का संभावना होती है कि टास्कों को समयबद्ध और कुशलतापूर्वक पूरा किया जा सके।
टास्क योजना का वर्गीकरण
टास्क योजना, संचालन-प्रणालियों और वितरित संसाधनों का एक महत्वपूर्ण घटक है, जो सिस्टम कार्यक्षमता और संसाधन उपयोग को अनुकूलित करने के लिए संसाधनों का आवंटन करता है और टास्कों को प्राथमिकता प्रदान करता है। टास्क योजना एल्गोरिदमों को बड़े माप के दो मुख्य श्रेणियों में विभाजित किया जा सकता है:
1. गैर-प्रीम्प्टिव योजना:
गैर-प्रीम्प्टिव योजना में, एक टास्क के निष्पादन शुरू होने के बाद, अन्य टास्क द्वारा इंटरप्ट नहीं किया जा सकता है जब तक कि वह अपने निष्पादन को पूरा नहीं कर लेता है। इस प्रकार की योजना सुनिश्चित करती है कि टास्क संवेदनशीलता के तशक्कुश के बिना निष्पादित होते हैं, निम्न प्राथमिकता टास्कों को उच्च-प्राथमिकता टास्कों से अड़चन नहीं आ सकती है। हालांकि, गैर-प्रीम्प्टिव योजना कम संसाधनों का उपयोग करने के कारण सिस्टम की दक्षता कम कर सकती है अगर किसी निम्न-प्राथमिकता टास्क ने एक विस्तारित अवधि के लिए CPU का उपयोग किया हो, तो ऊच्च-प्राथमिकता टास्कों को निष्पादित होने से रोकते हैं।
गैर-प्रीम्प्टिव योजना एल्गोरिदम के उदाहरण:
- पहले आने वाले पहले सेवा (FCFS) योजना: टास्कों को उनके आगमन के क्रम में निष्पादित किया जाता है।
- सबसे छोटे जॉब पहले (SJF) योजना: सबसे कम समय की निष्पादन अवधि वाले टास्क को प्राथमिकता दी जाती है।
- प्राथमिकता योजना: टास्कों को प्राथमिकताएं दी जाती हैं, और ऊच्च-प्राथमिकता टास्कों को पहले निष्पादित किया जाता है।
2. प्रीम्प्टिव योजना:
प्रीम्प्टिव शेड्यूलिंग में, एक उच्च प्राथमिकता वाला कार्य एक निम्न-प्राथमिकता वाले कार्य को रोक सकता है जो वर्तमान में क्रियान्वित हो रहा है। इससे सुनिश्चित होता है कि उच्च प्राथमिकता वाले कार्य हमेशा पहले क्रियान्वित होते हैं, यहां तक कि वे निम्न प्राथमिकता वाले कार्यों के बाद आते हैं। प्रीम्प्टिव शेड्यूलिंग सिस्टम की दक्षता और उत्तरदायित्व में बेहतर सुविधा प्रदान करता है, क्योंकि इसके द्वारा सिस्टम बदलती प्राथमिकताओं और संसाधन आवश्यकताओं के अनुकूल बनाने की अनुमति होती है। हालांकि, कार्यों के बीच कंटेक्स्ट स्विच के कारण यह अतिरिक्त ओवरहेड भी पैदा कर सकता है।
प्रीम्प्टिव शेड्यूलिंग एल्गोरिदम के उदाहरण:
- राउंड रोबिन शेड्यूलिंग: कार्य साइक्लिक ढंग से क्रियान्वित होते हैं, हर कार्य को एक निश्चित समय स्लाइस आवंटित किया जाता है।
- शॉर्टेस्ट रिमेनिंग टाइम फर्स्ट (एसआरटीएफ) शेड्यूलिंग: शॉर्टेस्ट शेष क्रियान्वयण समय वाले कार्यों को प्राथमिकता दी जाती है।
- प्राथमिकता आधारित प्रीम्प्टिव शेड्यूलिंग: प्राथमिकता शेड्यूलिंग के समान है, लेकिन यहां उच्च प्राथमिकता वाले कार्य निम्न प्राथमिकता वाले कार्यों को विफल कर सकते हैं।
गैर-प्रीम्प्टिव और प्रीम्प्टिव शेड्यूलिंग की तुलना:
सुविधा | गैर-प्रीम्प्टिव शेड्यूलिंग | प्रीम्प्टिव शेड्यूलिंग |
---|---|---|
कार्य रोध | अनुमति नहीं है | अनुमति है |
सिस्टम कुशलता | कम | अधिक |
उत्तरदायित्व | कम | अधिक |
ओवरहेड | कम | अधिक |
निर्धारितता | अधिक | कम |
गैर-प्रीम्प्टिव और प्रीम्प्टिव शेड्यूलिंग के बीच चुनाव सिस्टम की विशेष आवश्यकताओं पर निर्भर करता है। गैर-प्रीम्प्टिव शेड्यूलिंग सिस्टम के लिए उपयुक्त है जहां निश्चितता का व्यवहारिक होना और कार्य पूरा करने का समय प्रतिष्ठितात्मकता से अधिक महत्वपूर्ण है। प्रीम्प्टिव शेड्यूलिंग उच्च उत्तरदायित्व वाले सिस्टम के लिए उपयुक्त है और जहां उच्च प्राथमिकता वाले कार्यों की प्राथमिकता है, चाहे वे बाद में भी आएं।
वास्तविक समय प्रणालियों में कार्यों से संबंधित प्रश्नों के लिए
वास्तविक समय प्रणाली में कार्य क्या होता है?
वास्तविक समय प्रणाली में कार्य एक कार्य पदार्थ होता है। यह प्रोसेसर द्वारा एक निश्चित क्रम में क्रियान्वित होने वाले निर्देशों का समूह होता है। कार्यों को सामान्यतः संचालन प्रणाली द्वारा बनाए जाते हैं और निर्दिष्ट समय पर या घटनाओं के प्रतिक्रिया के लिए चलाने के लिए निर्धारित किए जाते हैं।
वास्तविक समय प्रणाली में विभिन्न प्रकार के कार्य क्या होते हैं?
वास्तविक समय प्रणाली में दो मुख्य प्रकार के कार्य होते हैं:
- आवर्ती कार्य नियमित अंतरालों पर क्रियान्वित होने वाले कार्य होते हैं। उदाहरण के लिए, एक सेंसर से डेटा पढ़ने वाला एक कार्य एक आवर्ती कार्य हो सकता है।
- अनियमित कार्य संघटित घटनाओं के प्रतिक्रिया के लिए क्रियान्वित होने वाले कार्य होते हैं। उदाहरण के लिए, एक बटन दबाने को प्रसंस्करण करने वाला एक कार्य एक अनियमित कार्य हो सकता है।
वास्तविक समय प्रणाली में कार्य कैसे अनुसूचित होते हैं?
वास्तविक समय प्रणाली में कार्यों को विभिन्न शेड्यूलिंग एल्गोरिदम का उपयोग करके अनुसूचित किया जाता है। कुछ सामान्य शेड्यूलिंग एल्गोरिदमों में हैं:
-
पहले आए, पहले चले (फीफो) शेड्यूलिंग: यह एल्गोरिदम कार्यों को बनाए जाने के क्रम में अनुसूचित करता है।
-
राउंड-रोबिन शेड्यूलिंग: यह एल्गोरिदम कार्यों को दायरिक ढंग से अनुसूचित करता है, प्रत्येक कार्य को एक समान समय अंश देकर क्रियान्वित करके।
-
प्राथमिकता-आधारित शेड्यूलिंग: यह एल्गोरिदम प्राथमिकता के आधार पर कार्यों को शेड्यूल करता है। उच्च प्राथमिकता वाले कार्यों को निम्न प्राथमिकता वाले कार्यों से पहले कार्यान्वित किया जाता है।
कार्य और धागे में क्या अंतर है?
कार्य एक वास्तविक समय सिस्टम में क्रियान्वयन की इकाई है, जबकि धागा एक सामान्य उद्देश्य वाले ऑपरेटिंग सिस्टम में क्रियान्वयन की इकाई है। कार्यों को सामान्यतः ऑपरेटिंग सिस्टम द्वारा शेड्यूल किया जाता है, जबकि धागों को सामान्यतः अनुप्रयोग द्वारा शेड्यूल किया जाता है।
वास्तविक समय सिस्टम में कार्यों का प्रबंधन करने के क्या चुनौतियाँ हैं?
वास्तविक समय सिस्टम में कार्यों के प्रबंधन के कई चुनौतियाँ हैं, जिनमें शामिल हैं:
- यह सुनिश्चित करना कि कार्य अपनी समयसीमाओं को पूरा करते हैं: वास्तविक समय सिस्टम में कार्यों को अपनी समयसीमाओं को पूरा करने के लिए करना चाहिए, ताकि सिस्टम खराबी न हो।
- कार्यों को संसाधनों के लिए प्रतीक्षा करने का क्षेत्र कम से कम करना: वास्तविक समय सिस्टम में कार्यों को सिस्टम की होद में तेजी से पहुंच करने की क्षमता होनी चाहिए, ताकि सिस्टम में देरी न हो।
- कार्यों को एक दूसरे के बीच बाधित न करना: वास्तविक समय सिस्टम में कार्य एक दूसरे के बीच मुद्रा प्रभाव के बिना स्वतंत्र रूप से क्रियान्वयन कर सकते हैं, ताकि सिस्टम की त्रुटि न हो।
वास्तविक समय सिस्टम में कार्यों के प्रबंधन की चुनौतियों को कैसे पार किया जा सकता है?
वास्तविक समय सिस्टम में कार्यों के प्रबंधन की चुनौतियों को पार करने के कई तरीके हैं, जिनमें शामिल हैं:
- एक वास्तविक समय ऑपरेटिंग सिस्टम (RTOS) का उपयोग करना: एक आरटीओएस एक विशेष प्रकार का ऑपरेटिंग सिस्टम है जो वास्तविक समय सिस्टम में उपयोग के लिए डिजाइन किया जाता है। आरटीओएस्स मुद्राओं, संसाधन प्रबंधन और इंटर-कार्य संचार जैसे कई विशेषताएं प्रदान करते हैं जो कार्य प्रबंधन में मदद करती हैं।
- एक कार्य प्रबंधन फ्रेमवर्क का उपयोग करना: एक कार्य प्रबंधन फ्रेमवर्क एक सॉफ़्टवेयर पुस्तकालय होती है जो कार्यों के प्रबंधन के लिए एक सेट फ़ंक्शन प्रदान करती है। कार्य प्रबंधन फ्रेमवर्क कार्यों को बनाने, शेड्यूल करने और प्रबंधित करने की प्रक्रिया को सरल बनाने में मदद कर सकती है।
- वास्तविक समय सिस्टमों के विकास के लिए सर्वश्रेष्ठ अभ्यासों का पालन करना: वास्तविक समय सिस्टमों के प्रदर्शन को सुधारने में मदद करने के लिए कई सर्वोत्तम अभ्यासों का पालन किया जा सकता है। इन सर्वश्रेष्ठ अभ्यासों में कुशल एल्गोरिदम का उपयोग करना, कार्यों को संसाधनों के लिए प्रतीक्षा करने का क्षेत्र कम से कम करना, और कार्यों को एक दूसरे के बीच आपस में व्यवाहारिक विरोध करना शामिल है।