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، ...). قبل تنفيذ البديل الأساسي، يحفظ النظام نقطة تفتيش لحالته الراهنة. عند اكتمال البديل الأساسي، يُجرى اختبار القبول على المخرجات. يُعدّ اختبار القبول جزءًا أساسيًا من المنطق الذي يتحقق من أن النتيجة مقبولة؛ ولا يُشترط فيه إثبات الصحة المطلقة، بل يكفي إثبات أن النتيجة معقولة ومتسقة.

إذا اجتازت النتيجة اختبار القبول، يتم تجاهل نقطة التحقق، ويستمر البرنامج. أما إذا فشل اختبار القبول، أو إذا فشل البديل الأساسي نفسه في التنفيذ (مثلاً، بسبب خطأ أثناء التشغيل)، يقوم النظام بالتراجع. يستعيد النظام الحالة من نقطة التحقق المحفوظة، ثم ينفذ البديل التالي في التسلسل (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
– Computer science

يكتب

Software/Algorithm

خلل

Incremental

الاستخدام

Niche/Specialized

مقدمات

  • مفاهيم معالجة الاستثناءات في لغات البرمجة
  • آليات معالجة قواعد البيانات والتراجع عنها
  • Early work on program verification and correctness
  • المبادئ العامة للتكرار من هندسة الأجهزة

التطبيقات

  • البرمجيات بالغة الأهمية للسلامة في أنظمة إشارات السكك الحديدية
  • أنظمة حماية المفاعلات النووية
  • تطبيقات الفضاء الجوي حيث يكون فشل البرمجيات كارثيًا
  • أنظمة تشغيل تجريبية مقاومة للأعطال

براءات الاختراع:

NA

أفكار ابتكارية محتملة

  • automated generation of acceptance tests from formal specifications
  • hardware-accelerated checkpointing and rollback mechanisms
  • integration of recovery blocks with machine learning for predictive fault detection
  • distributed recovery blocks for microservices architectures
  • recovery blocks for securing smart contracts on blockchains
  • adaptive recovery block systems that reorder alternates based on past performance
  • lightweight recovery block frameworks for resource-constrained embedded systems
  • concurrent recovery blocks for multi-threaded applications
  • formal verification tools for proving the correctness of recovery block implementations
  • self-synthesizing software that generates its own alternate modules
ذات صلة بـ: كتل الاسترداد، تحمل أخطاء البرمجيات، تنوع التصميم، اختبار القبول، استرداد الأخطاء العكسية، نقاط التفتيش، برايان راندل، البرمجيات الحساسة للسلامة، الوحدات الزائدة، برمجة الإصدارات المتعددة.

السياق التاريخي

مخطط إعادة الهيكلة

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

(إذا كان التاريخ غير معروف أو غير ذي صلة، على سبيل المثال "ميكانيكا الموائع"، يتم توفير تقدير تقريبي لظهوره الملحوظ)

أحدث الإضافات

أهم المنشورات والمقالات

أفضل الأدوات الأصلية

السنة العاشرة عيد

الصور والتنزيلات بالحجم الكامل متاحة فقط، ومجانية تمامًا، للأعضاء المسجلين.