تنفيذ متزامن (حوسبة)

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ ابحث


إن أنظمة التنفيذ المتزامن (Lockstep) هي أنظمة حوسبة متكررة تقوم بتشغيل نفس المجموعة من العمليات في الوقت ذاته بشكلٍ متوازِ. ويمكن مقارنة نتاج عمليات التنفيذ المتزامن لتحديد ما إذا كان هناك خطأ أم لا. وفي بعض الأحيان، يتم ضبط التغير الوقتي (مهلة التأخير) بين نظامين؛ مما يزيد من احتمالية اكتشاف الأخطاء الناجمة عن التأثيرات الخارجية (مثل ارتفاع الجهد الكهربائي أو الإشعاع المؤيَن أو الهندسة العكسية في الموقع).

للتشغيل في وضع التنفيذ المتزامن، يتم إعداد كل نظام للتقدم من حالة واحدة واضحة المعالم إلى الحالة التالية واضحة المعالم. وعند وصول مجموعة جديدة من المدخلات إلى النظام، فإنه يقوم بمعالجتها وتوليد نواتج جديدة وتحديث حالته. وهذه المجموعة من التغيرات (المدخلات الجديدة والنواتج الجديدة والحالة الجديدة) هي التي تحدد هذه الخطوة، كما ينبغي التعامل معها باعتبارها إجراءً ذريًا؛ بمعنى آخر، إما أن تحدث كلها أو لا يحدث أيًا منها، ولكن لا شيء بينهما.

وقد نشأ المصطلح الإنجليزي "lockstep"، والذي يعني التنفيذ المتزامن، من استخدام السجن حيث يشير إلى السير المتزامن الذي يقوم فيه المساجين بالسير معًا عن قرب كتدريب بدني.

التكرار النمطي المزدوج[عدل]

عندما تكون أنظمة الحاسوب متكررة، ولكن يقوم كل منهما بمعالجة كل خطوة بشكل فعال، يكون من الصعب الفصل بينهما إذا كانت نواتجها مختلفة في نهاية كل خطوة. ولهذا السبب، من الشائع أن يتم تشغيل أنظمة التكرار النمطي المزدوج (DMR) في شكل "جهاز رئيسي/تابع"؛ حيث يكون الجهاز التابع "في وضع الاستعداد" للجهاز الرئيسي بدلاً من أن يعملاً معًا بشكل متزامن. ونظرًا لعدم وجود ميزة في أن تقوم وحدة الجهاز التابع بمعالجة كل خطوة بشكل منفصل، فالطريقة الشائعة للعمل بالنسبة للجهاز الرئيسي هي نسخ حالته في نهاية كل خطوات من خطوات عمليات المعالجة في التابع. وإذا تعرض الجهاز الرئيسي للعطل عند نقطة ما، فإن الجهاز التابع يكون مستعدًا لمتابعة العمل من آخر خطوة صحيحة معروفة.

وعلى الرغم من أن أسلوب التنفيذ المتزامن أو أسلوب التكرار النمطي المزدوج (عند جمعه مع بعض وسائل اكتشاف الأخطاء في النظام الرئيسي) يمكنه توفير ميزة التكرار عند حدوث عطل في الأجهزة في النظام الأساسي، فإن هذين الأسلوبين لا يمكنهما توفير الحماية من تعطل البرمجيات. وفي حالة تعطل النظام الرئيسي بسبب خطأ برمجي، فمن المحتمل جدًا أن يقوم النظام التابع - في محاولة منه لتكرار تنفيذ الخطوة التي فشلت - بتكرار نفس الخطأ ببساطة ومن ثّم يتعطل بنفس الطريقة، والمثال على ذلك إخفاق النمط المشترك.

التكرار النمطي الثلاثي[عدل]

عندما تتم مضاعفة أنظمة الحاسوب ثلاث مرات، يصبح من الممكن التعامل معها بوصفها أنظمة "تصويت". إذا تعارض ناتج وحدة واحدة مع الوحدتين الأخريين، فيتم التعامل معها كوحدة تعرضت للعطل. ويتم التعامل مع النواتج المتطابقة من الوحدتين الأخريين على اعتبار أنها نواتج صحيحة.