إن أنظمة التنفيذ المتزامن (Lockstep) هي أنظمة حوسبة متكررة تقوم بتشغيل نفس المجموعة من العمليات في الوقت ذاته بشكلٍ متوازِ.[1][2][3] ويمكن مقارنة نتاج عمليات التنفيذ المتزامن لتحديد ما إذا كان هناك خطأ أم لا. وفي بعض الأحيان، يتم ضبط التغير الوقتي (مهلة التأخير) بين نظامين؛ مما يزيد من احتمالية اكتشاف الأخطاء الناجمة عن التأثيرات الخارجية (مثل ارتفاع الجهد الكهربائي أو الإشعاع المؤيَن أو الهندسة العكسية في الموقع).
للتشغيل في وضع التنفيذ المتزامن، يتم إعداد كل نظام للتقدم من حالة واحدة واضحة المعالم إلى الحالة التالية واضحة المعالم. وعند وصول مجموعة جديدة من المدخلات إلى النظام، فإنه يقوم بمعالجتها وتوليد نواتج جديدة وتحديث حالته. وهذه المجموعة من التغيرات (المدخلات الجديدة والنواتج الجديدة والحالة الجديدة) هي التي تحدد هذه الخطوة، كما ينبغي التعامل معها باعتبارها إجراءً ذريًا؛ بمعنى آخر، إما أن تحدث كلها أو لا يحدث أيًا منها، ولكن لا شيء بينهما.
وقد نشأ المصطلح الإنجليزي "lockstep"، والذي يعني التنفيذ المتزامن، من استخدام السجن حيث يشير إلى السير المتزامن الذي يقوم فيه المساجين بالسير معًا عن قرب كتدريب بدني.
التكرار النمطي المزدوج
عندما تكون أنظمة الحاسوب متكررة، ولكن يقوم كل منهما بمعالجة كل خطوة بشكل فعال، يكون من الصعب الفصل بينهما إذا كانت نواتجها مختلفة في نهاية كل خطوة. ولهذا السبب، من الشائع أن يتم تشغيل أنظمة التكرار النمطي المزدوج (DMR) في شكل "جهاز رئيسي/تابع"؛ حيث يكون الجهاز التابع "في وضع الاستعداد" للجهاز الرئيسي بدلاً من أن يعملاً معًا بشكل متزامن. ونظرًا لعدم وجود ميزة في أن تقوم وحدة الجهاز التابع بمعالجة كل خطوة بشكل منفصل، فالطريقة الشائعة للعمل بالنسبة للجهاز الرئيسي هي نسخ حالته في نهاية كل خطوات من خطوات عمليات المعالجة في التابع. وإذا تعرض الجهاز الرئيسي للعطل عند نقطة ما، فإن الجهاز التابع يكون مستعدًا لمتابعة العمل من آخر خطوة صحيحة معروفة.
وعلى الرغم من أن أسلوب التنفيذ المتزامن أو أسلوب التكرار النمطي المزدوج (عند جمعه مع بعض وسائل اكتشاف الأخطاء في النظام الرئيسي) يمكنه توفير ميزة التكرار عند حدوث عطل في الأجهزة في النظام الأساسي، فإن هذين الأسلوبين لا يمكنهما توفير الحماية من تعطل البرمجيات. وفي حالة تعطل النظام الرئيسي بسبب خطأ برمجي، فمن المحتمل جدًا أن يقوم النظام التابع - في محاولة منه لتكرار تنفيذ الخطوة التي فشلت - بتكرار نفس الخطأ ببساطة ومن ثّم يتعطل بنفس الطريقة، والمثال على ذلك إخفاق النمط المشترك.
التكرار النمطي الثلاثي
عندما تتم مضاعفة أنظمة الحاسوب ثلاث مرات، يصبح من الممكن التعامل معها بوصفها أنظمة "تصويت". إذا تعارض ناتج وحدة واحدة مع الوحدتين الأخريين، فيتم التعامل معها كوحدة تعرضت للعطل. ويتم التعامل مع النواتج المتطابقة من الوحدتين الأخريين على اعتبار أنها نواتج صحيحة.
مراجع
- Sree Syamalakumari (2014-02-18). "Intel Xeon Processor E7 V2 Family Technical Overview, Section 3.1: Intel C104/102 Scalable Memory Buffer". إنتل. مؤرشف من الأصل في 04 ديسمبر 201609 سبتمبر 2014.
- "Best Practice Guidelines for ProLiant Servers with the Intel Xeon 5500 processor series Engineering Whitepaper, 1st Edition" ( كتاب إلكتروني PDF ). HP. May 2009. صفحات 8–909 سبتمبر 2014.
- "Intel C102/C104 Scalable Memory Buffer Datasheet, Section 1.3.1.2.2: 1:1 Sub-channel Lockstep Mode" ( كتاب إلكتروني PDF ). إنتل. February 2014. صفحة 9. مؤرشف من الأصل ( كتاب إلكتروني PDF ) في 19 أكتوبر 201625 يناير 2015.