Product Design, Manufacturing & Innovation Resources
घर » रिकवरी ब्लॉक योजना

रिकवरी ब्लॉक योजना

1975-06-01
  • Brian Randell
Software engineer analyzing Recovery Block Scheme in a modern office setting.

(यह छवि केवल उदाहरण के लिए बनाई गई है)

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

ब्रायन रैंडेल द्वारा प्रस्तुत रिकवरी ब्लॉक अवधारणा, सॉफ़्टवेयर त्रुटि सहनशीलता प्राप्त करने का एक संरचित दृष्टिकोण है। यह किसी दिए गए ऑपरेशन के लिए वैकल्पिक (अल्टरनेट) के रूप में जाने जाने वाले रिडंडेंट सॉफ़्टवेयर मॉड्यूल प्रदान करने के सिद्धांत पर काम करता है, साथ ही ऑपरेशन के परिणाम की शुद्धता को सत्यापित करने के लिए एक तंत्र भी प्रदान करता है। इसके प्रमुख घटक हैं: स्वीकृति परीक्षण (AT), प्राथमिक विकल्प (P), और द्वितीयक विकल्पों का एक क्रम (Q1, Q2, आदि)। प्राथमिक विकल्प को निष्पादित करने से पहले, सिस्टम अपनी वर्तमान स्थिति का एक चेकपॉइंट सहेजता है। P के पूरा होने पर, आउटपुट पर स्वीकृति परीक्षण चलाया जाता है। AT एक महत्वपूर्ण तर्क है जो परिणाम की स्वीकार्यता को सत्यापित करता है; इसे पूर्ण शुद्धता साबित करने की आवश्यकता नहीं है, बल्कि यह साबित करना है कि परिणाम तर्कसंगत और सुसंगत है।

यदि परिणाम स्वीकृति परीक्षण (AT) में सफल होता है, तो चेकपॉइंट को हटा दिया जाता है और प्रोग्राम आगे बढ़ता है। हालांकि, यदि AT विफल हो जाता है, या यदि प्राथमिक वैकल्पिक प्रोग्राम स्वयं निष्पादित होने में विफल रहता है (उदाहरण के लिए, रनटाइम त्रुटि के कारण), तो सिस्टम रोलबैक करता है। यह सहेजे गए चेकपॉइंट से स्थिति को पुनर्स्थापित करता है और फिर अनुक्रम में अगले वैकल्पिक प्रोग्राम (Q1) को निष्पादित करता है। Q1 के आउटपुट को फिर उसी स्वीकृति परीक्षण से गुज़ारा जाता है। यह प्रक्रिया तब तक जारी रहती है जब तक कि कोई वैकल्पिक प्रोग्राम परीक्षण में सफल होने वाला परिणाम नहीं देता, या सभी वैकल्पिक प्रोग्राम समाप्त नहीं हो जाते, उस स्थिति में सिस्टम-स्तर की विफलता घोषित कर दी जाती है।

The effectiveness of recovery blocks hinges on the diversity of the alternates. The primary and secondary modules should be designed and implemented independently, ideally by different teams using different algorithms or programming languages. This minimizes the chance of a common design flaw (a bug) existing in all alternates, which would cause them all to fail the acceptance test in the same way. The acceptance test itself is a single point of failure and must be simpler and more reliable than the modules it is testing. Compared to N-version programming, another software fault tolerance technique, recovery blocks can be more efficient as they only execute one module at a time, but they introduce latency due to the potential for rollback and re-execution.

UNESCO Nomenclature: 1203
कंप्यूटर विज्ञान

Type

सॉफ्टवेयर/एल्गोरिदम

व्यवधान

इंक्रीमेंटल

उपयोग

विशिष्ट/विशेषज्ञ

शगुन

  • प्रोग्रामिंग भाषाओं में अपवाद प्रबंधन की अवधारणाएँ
  • डेटाबेस लेनदेन और रोलबैक तंत्र
  • प्रोग्राम सत्यापन और शुद्धता पर प्रारंभिक कार्य
  • हार्डवेयर इंजीनियरिंग से अतिरेक के सामान्य सिद्धांत

आवेदन

  • रेलवे सिग्नलिंग सिस्टम में सुरक्षा-महत्वपूर्ण सॉफ्टवेयर
  • परमाणु रिएक्टर सुरक्षा प्रणालियाँ
  • एयरोस्पेस अनुप्रयोग जहां सॉफ्टवेयर की विफलता विनाशकारी हो सकती है
  • प्रायोगिक दोष-सहिष्णु ऑपरेटिंग सिस्टम

पेटेंट:

NA

संभावित नवाचार विचार

  • औपचारिक विशिष्टताओं से स्वीकृति परीक्षणों का स्वचालित निर्माण
  • हार्डवेयर-त्वरित चेकपॉइंटिंग और रोलबैक तंत्र
  • भविष्यवाणी आधारित दोष पहचान के लिए मशीन लर्निंग के साथ रिकवरी ब्लॉकों का एकीकरण
  • माइक्रोसेवा आर्किटेक्चर के लिए वितरित रिकवरी ब्लॉक
  • ब्लॉकचेन पर स्मार्ट अनुबंधों को सुरक्षित करने के लिए रिकवरी ब्लॉक
  • अनुकूली रिकवरी ब्लॉक सिस्टम जो पिछले प्रदर्शन के आधार पर विकल्पों को पुनर्व्यवस्थित करते हैं
  • संसाधन-सीमित एम्बेडेड सिस्टम के लिए हल्के रिकवरी ब्लॉक फ्रेमवर्क
  • मल्टी-थ्रेडेड अनुप्रयोगों के लिए समवर्ती रिकवरी ब्लॉक
  • औपचारिक सत्यापन tools for proving the correctness of recovery block implementations
  • स्व-संश्लेषण सॉफ्टवेयर जो अपने स्वयं के वैकल्पिक मॉड्यूल उत्पन्न करता है
संबंधित विषय: रिकवरी ब्लॉक, सॉफ्टवेयर फॉल्ट टॉलरेंस, डिजाइन डाइवर्सिटी, एक्सेप्टेंस टेस्ट, बैकवर्ड एरर रिकवरी, चेकपॉइंटिंग, ब्रायन रैंडेल, सेफ्टी-क्रिटिकल सॉफ्टवेयर, रिडंडेंट मॉड्यूल, एन-वर्जन प्रोग्रामिंग।

ऐतिहासिक संदर्भ

रिकवरी ब्लॉक योजना

1970
1970
1970-01-01
1975-06-01
1980
1980
1980
1970
1970
1970
1973
1980
1980
1980
1980

(यदि तिथि अज्ञात है या प्रासंगिक नहीं है, उदाहरण के लिए "द्रव यांत्रिकी", तो इसके उल्लेखनीय उद्भव का एक अनुमानित आंकड़ा प्रदान किया गया है)

नवीनतम परिवर्धन

शीर्ष पोस्ट और लेख

शीर्ष मूल उपकरण

10वां वर्ष सालगिरह

पंजीकृत सदस्यों के लिए पूर्ण आकार की छवियाँ और डाउनलोड 100% निःशुल्क उपलब्ध हैं।