بيت تطوير ما هي خوارزمية ديكر؟ - تعريف من techopedia

ما هي خوارزمية ديكر؟ - تعريف من techopedia

جدول المحتويات:

Anonim

تعريف - ماذا تعني خوارزمية ديكر؟

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

تيكوبيديا تشرح خوارزمية ديكر

تسمح خوارزمية Dekker لعملية واحدة فقط باستخدام مورد إذا حاولت عمليتان استخدامه في نفس الوقت. تسليط الضوء على الخوارزمية هو كيف يحل هذه المشكلة. نجحت في منع الصراع من خلال فرض الاستبعاد المتبادل ، مما يعني أن عملية واحدة فقط قد تستخدم المورد في وقت واحد وسوف تنتظر ما إذا كانت هناك عملية أخرى تستخدمه. يتم تحقيق ذلك باستخدام اثنين من "الأعلام" و "الرمز المميز". تشير العلامات إلى ما إذا كانت العملية تريد إدخال القسم المهم (CS) أم لا ؛ تعني القيمة 1 القيمة TRUE التي تريد العملية إدخالها في CS ، بينما تشير 0 أو FALSE إلى عكس ذلك. يشير الرمز المميز ، الذي يمكن أن يكون له أيضًا قيمة 1 أو 0 ، إلى الأولوية عندما يكون لكلتا العمليتين إشاراتها لتعيين TRUE.


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

ما هي خوارزمية ديكر؟ - تعريف من techopedia