9-ma’ruza. Saytlarni aylanish va tanlash algoritmlari. Reja


begin ifthis - инициаторthen


Download 172.01 Kb.
bet9/11
Sana17.10.2023
Hajmi172.01 Kb.
#1706729
1   2   3   4   5   6   7   8   9   10   11
Bog'liq
9а-mavzu

begin ifthis - инициаторthen
begin state := cand ; send (token, this) to Nextp ;
repeat receive (token, q) ;
if q = this then state := koordinator
else if est(this) <est(q) then
begin ifstate = candthen state := lost ;
send (token, q) to Nextp
end
until state = koordinator
end
else repeat receive (token, q) ; send (token, q) to Nextp ;
ifstate = sleep then state := lost
until false
(* Faqat koordinator dasturni tugatishi mumkin, barcha saytlarga ularning identifikatorlarini bildirish uchun xabar yuboradi. *)

P0 eng katta identifikator bilan boshlovchi bo'lishi mumkin. Barcha jarayonlar yoki tashabbuskorlar yoki p0dan kichik identifikatorlarga ega tashabbuskorlardir, shuning uchun barcha jarayonlar p0 tomonidan yuborilgan tokenga (token, p0) o'tadi. Shuning uchun, p0 markerini qaytarib oladi va tanlanadi.


Nomzodlarni tanlay olmaysiz, chunki ularning barchasi oxir-oqibat yo'qolib ketgan davlatga kelib, ular orqali p0 belgisi o'tadi. Ester (p)


9.5-rasm. Chang-Roberts algoritmi.

9.5.-rasmda Chang-Roberts algoritmining bajarilishida ma'lum bir nuqta bor. Ringda saytlar mavjud. Ringning tashqarisida ularning identifikatorlari ichki qismida - muvofiqlashtiruvchi tanlangan hisob-kitoblarning qiymatlari ko'rsatilgan. 2-raqamli doira - ko'rsatkich "31" qiymatiga ega bo'lgan sayt raqami ko'tarilgan marker (token, 2), o'q ko'rsatkich marker harakatining yo'nalishini bildiradi. Algoritm bajarilgan dastlabki sayt yulduzcha bilan belgilanadi - bu est (1) = 24 bo'lgan sayt.



Download 172.01 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10   11




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling