خوارزمية مايكاوا

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

الخوارزمية

مصطلحات

  • الموقع هو أي جهاز حاسوبي يقوم بتشغيل خوارزمية مايكاوا
  • لأي طلب دخول القسم الحرج :
    • الموقع الطالب هو الموقع الذي يطلب الدخول إلى القسم الحرج.
    • الموقع المُستقبِل هو كل موقع آخر يستقبل الطلب من الموقع الطالب.
  • يشير ts إلى الطابع الزمني المحلي للنظام وفقًا لساعته المنطقية

الخوارزمية

الموقع الطالب :

  • موقع طالبPأنا{\displaystyle P_{i}}يرسل رسالةطلب(تs،أنا){\displaystyle {\text{request}}(ts,i)}إلى جميع المواقع في مجموعة النصاب القانوني الخاصة بهاRأنا{\displaystyle R_{i}}.

موقع الاستقبال :

  • عند استلام أطلب(تs،أنا){\displaystyle {\text{request}}(ts,i)}الرسالة، الموقع المُستقبِلPج{\displaystyle P_{j}}سوف:
    • إذا كان الموقعPج{\displaystyle P_{j}}لم يكن لديه سجل متميزمنحة{\displaystyle {\text{grant}}}رسالة (أي،منحة{\displaystyle {\text{grant}}}(الرسالة التي لم يتم إصدارها)، ثم الموقعPج{\displaystyle P_{j}}يرسلمنحة(ج){\displaystyle {\text{grant}}(j)}رسالة إلى الموقعPأنا{\displaystyle P_{i}}.
    • إذا كان الموقعPج{\displaystyle P_{j}}يتمتع بـمنحة{\displaystyle {\text{grant}}}رسالة ذات أولوية أعلى من أولوية الطلب، ثم الموقعPج{\displaystyle P_{j}}يرسلفشل(ج){\displaystyle {\text{failed}}(j)}رسالة إلى الموقعPأنا{\displaystyle P_{i}}والموقعPج{\displaystyle P_{j}}يقوم بوضع الطلب من الموقع في قائمة الانتظارPأنا{\displaystyle P_{i}}.
    • إذا كان الموقعPج{\displaystyle P_{j}}يتمتع بـمنحة{\displaystyle {\text{grant}}}رسالة ذات أولوية أقل من أولوية الطلب، ثم الموقعPج{\displaystyle P_{j}}يرسلاستفسر(ج){\displaystyle {\text{inquire}}(j)}رسالة إلى العملية التي مُنحت حاليًا حق الوصول إلى القسم الحرج حسب الموقعPج{\displaystyle P_{j}}(أي الموقع المتميز)منحة{\displaystyle {\text{grant}}}رسالة.)
  • عند استلام أاستفسر(ج){\displaystyle {\text{inquire}}(j)}رسالة، الموقعPك{\displaystyle P_{k}}سوف:
    • أرسلأَثْمَر(ك){\displaystyle {\text{yield}}(k)}رسالة إلى الموقعPج{\displaystyle P_{j}}إذا وفقط إذا كان الموقعPك{\displaystyle P_{k}}حصل علىفشل{\displaystyle {\text{فشل}}}رسالة من موقع آخر أو إذاPك{\displaystyle P_{k}}أرسل المنتج إلى موقع آخر لكنه لم يستلم منتجًا جديدًامنحة{\displaystyle {\text{grant}}}.
  • عند استلام أأَثْمَر(ك){\displaystyle {\text{yield}}(k)}رسالة، موقعPج{\displaystyle P_{j}}سوف:
    • أرسلمنحة(ج){\displaystyle {\text{grant}}(j)}تُرسل الرسالة إلى الطلب الموجود في أعلى قائمة الانتظار الخاصة به. لاحظ أن الطلبات الموجودة في الأعلى لها الأولوية القصوى.
    • مكانPك{\displaystyle P_{k}}في قائمة طلباتها.
  • عند استلام أيطلق(أنا){\displaystyle {\text{release}}(i)}رسالة، موقعPج{\displaystyle P_{j}}سوف:
    • يمسحPأنا{\displaystyle P_{i}}من قائمة طلباتها.
    • أرسلمنحة(ج){\displaystyle {\text{grant}}(j)}رسالة إلى الطلب الموجود في أعلى قائمة الطلبات الخاصة به.

القسم الحرج :

  • موقعPأنا{\displaystyle P_{i}}يدخل القسم الحرج عند استلاممنحة{\displaystyle {\text{grant}}}رسالة من جميع المواقع فيRأنا{\displaystyle R_{i}}.
  • عند الخروج من القسم الحرج،Pأنا{\displaystyle P_{i}}يرسليطلق(أنا){\displaystyle {\text{release}}(i)}رسالة إلى جميع المواقع فيRأنا{\displaystyle R_{i}}.

مجموعة النصاب (Rx{\displaystyle R_{x}}) : يجب أن تلتزم مجموعة النصاب بالخصائص التالية:

  1. أناج[RأناRج]{\displaystyle \forall i\,\forall j\,[R_{i}\bigcap R_{j}\neq \emptyset ]}
  2. أنا[PأناRأنا]{\displaystyle \forall i\,[P_{i}\in R_{i}]}
  3. أنا[|Rأنا|=ك]{\displaystyle \forall i\,[|R_{i}|=K]}
  4. موقعPأنا{\displaystyle P_{i}}يحتوي على بالضبطك{\displaystyle K}مجموعات الطلبات
لذلك:|Rأنا|شمال-1{\displaystyle |R_{i}|\geq {\sqrt {N-1}}}

أداء

  • عدد رسائل الشبكة؛3شمال{\displaystyle 3{\sqrt {N}}}ل6شمال{\displaystyle 6{\sqrt {N}}}
  • تأخير التزامن: تأخيران في انتشار الرسائل
  • قد يحدث تعطل في الخوارزمية في حال عدم وجود وسائل حماية. [ 1 ] [ 2 ]

انظر أيضاً

مراجع

  • م. مايكاوا، "خوارزمية √N للاستبعاد المتبادل في الأنظمة اللامركزية"، ACM

Transactions in Computer Systems, vol. 3., no. 2., pp. 145–159, 1985.

  • مامورو مايكاوا، آرثر إي. أولديهوفت، رودني ر. أولديهوفت (1987). أنظمة التشغيل: مفاهيم متقدمة. شركة بنجامين/كومينغز للنشر.
  • ب. ساندرز (1987). بنية المعلومات لخوارزميات الاستبعاد المتبادل الموزعة. معاملات ACM لأنظمة الحاسوب، المجلد 3، العدد 2، الصفحات  145-159.