रिकवरी ब्लॉक योजना
The recovery block scheme is a सॉफ्टवेयर fault-tolerance technique based on design diversity and backward error recovery. It structures a program as a series of blocks, each with a primary module, an acceptance test, and one or more alternate modules. If the primary module’s output fails the acceptance test, the system state is restored, and an alternate module is executed.
ब्रायन रैंडेल द्वारा प्रस्तुत रिकवरी ब्लॉक अवधारणा, सॉफ़्टवेयर त्रुटि सहनशीलता प्राप्त करने का एक संरचित दृष्टिकोण है। यह किसी दिए गए ऑपरेशन के लिए वैकल्पिक (अल्टरनेट) के रूप में जाने जाने वाले रिडंडेंट सॉफ़्टवेयर मॉड्यूल प्रदान करने के सिद्धांत पर काम करता है, साथ ही ऑपरेशन के परिणाम की शुद्धता को सत्यापित करने के लिए एक तंत्र भी प्रदान करता है। इसके प्रमुख घटक हैं: स्वीकृति परीक्षण (AT), प्राथमिक विकल्प (P), और द्वितीयक विकल्पों का एक क्रम (Q1, Q2, आदि)। प्राथमिक विकल्प को निष्पादित करने से पहले, सिस्टम अपनी वर्तमान स्थिति का एक चेकपॉइंट सहेजता है। P के पूरा होने पर, आउटपुट पर स्वीकृति परीक्षण चलाया जाता है। AT एक महत्वपूर्ण तर्क है जो परिणाम की स्वीकार्यता को सत्यापित करता है; इसे पूर्ण शुद्धता साबित करने की आवश्यकता नहीं है, बल्कि यह साबित करना है कि परिणाम तर्कसंगत और सुसंगत है।
यदि परिणाम स्वीकृति परीक्षण (AT) में सफल होता है, तो चेकपॉइंट को हटा दिया जाता है और प्रोग्राम आगे बढ़ता है। हालांकि, यदि AT विफल हो जाता है, या यदि प्राथमिक वैकल्पिक प्रोग्राम स्वयं निष्पादित होने में विफल रहता है (उदाहरण के लिए, रनटाइम त्रुटि के कारण), तो सिस्टम रोलबैक करता है। यह सहेजे गए चेकपॉइंट से स्थिति को पुनर्स्थापित करता है और फिर अनुक्रम में अगले वैकल्पिक प्रोग्राम (Q1) को निष्पादित करता है। Q1 के आउटपुट को फिर उसी स्वीकृति परीक्षण से गुज़ारा जाता है। यह प्रक्रिया तब तक जारी रहती है जब तक कि कोई वैकल्पिक प्रोग्राम परीक्षण में सफल होने वाला परिणाम नहीं देता, या सभी वैकल्पिक प्रोग्राम समाप्त नहीं हो जाते, उस स्थिति में सिस्टम-स्तर की विफलता घोषित कर दी जाती है।
रिकवरी ब्लॉक की प्रभावशीलता वैकल्पिक मॉड्यूल की विविधता पर निर्भर करती है। प्राथमिक और द्वितीयक मॉड्यूल को स्वतंत्र रूप से डिज़ाइन और कार्यान्वित किया जाना चाहिए, आदर्श रूप से अलग-अलग टीमों द्वारा अलग-अलग एल्गोरिदम या प्रोग्रामिंग भाषाओं का उपयोग करके। इससे सभी वैकल्पिक मॉड्यूल में एक ही डिज़ाइन त्रुटि (बग) होने की संभावना कम हो जाती है, जिससे वे सभी स्वीकृति परीक्षण में एक ही तरह से विफल हो सकते हैं। स्वीकृति परीक्षण स्वयं विफलता का एक बिंदु है और इसे उन मॉड्यूल की तुलना में सरल और अधिक विश्वसनीय होना चाहिए जिनका यह परीक्षण कर रहा है। एन-वर्जन प्रोग्रामिंग, एक अन्य सॉफ़्टवेयर दोष सहिष्णुता तकनीक, की तुलना में रिकवरी ब्लॉक अधिक कुशल हो सकते हैं क्योंकि वे एक समय में केवल एक मॉड्यूल को निष्पादित करते हैं, लेकिन रोलबैक और पुनः निष्पादन की संभावना के कारण वे विलंब उत्पन्न करते हैं।
UNESCO Nomenclature: 1203
कंप्यूटर विज्ञान
शगुन
- प्रोग्रामिंग भाषाओं में अपवाद प्रबंधन की अवधारणाएँ
- डेटाबेस लेनदेन और रोलबैक तंत्र
- प्रोग्राम सत्यापन और शुद्धता पर प्रारंभिक कार्य
- हार्डवेयर इंजीनियरिंग से अतिरेक के सामान्य सिद्धांत
आवेदन
- रेलवे सिग्नलिंग सिस्टम में सुरक्षा-महत्वपूर्ण सॉफ्टवेयर
- परमाणु रिएक्टर सुरक्षा प्रणालियाँ
- एयरोस्पेस अनुप्रयोग जहां सॉफ्टवेयर की विफलता विनाशकारी हो सकती है
- प्रायोगिक दोष-सहिष्णु ऑपरेटिंग सिस्टम
संभावित नवाचार विचार
बॉट ट्रैफिक को कम करने के कारण, जो वर्तमान में प्रति दिन 40,000 से अधिक है, यह सामग्री केवल समुदाय के सदस्यों के लिए आरक्षित है।
> लॉगिन < या > रजिस्टर < इस सामग्री और अन्य सभी प्रतिबंधित सामग्रियों और उपकरणों तक पहुंच (100% निःशुल्क) है।
संबंधित विषय: रिकवरी ब्लॉक, सॉफ्टवेयर फॉल्ट टॉलरेंस, डिजाइन डाइवर्सिटी, एक्सेप्टेंस टेस्ट, बैकवर्ड एरर रिकवरी, चेकपॉइंटिंग, ब्रायन रैंडेल, सेफ्टी-क्रिटिकल सॉफ्टवेयर, रिडंडेंट मॉड्यूल, एन-वर्जन प्रोग्रामिंग।