Parallel dasturlash


-misol. Semaforlar yordamida tanqidiy qism masalasini yechish



Download 0,6 Mb.
bet9/77
Sana07.07.2022
Hajmi0,6 Mb.
#754293
1   ...   5   6   7   8   9   10   11   12   ...   77
Bog'liq
Parallel dasturlash (1)

2-misol. Semaforlar yordamida tanqidiy qism masalasini yechish


semafor: mutex=1 => КС boʻsh, mutex=0 => КС band
sem mutex=1;


thread CS (i=0;i
while (true)
{
P(mutex); //kirish protokoli
Kritik seksiya;
V(mutex); // chiqish protokoli
Kiritik boʻlmagan seksiya;
}
}


7.4. Monitorlar


Semaforlar asosiy sinxronizatsiya mexanizmidir. Koʻp bosqichli dasturlash uchun til vositalarida, qoida tariqasida, ular bir nechta ilovalar bilan ifodalanadi. Biroq, semaforlar past darajadagi mexanizm boʻlib, odatda ushbu darajadagi obнektlarga xos boʻlgan bir qator kamchiliklarga ega. Misol uchun, siz tasodifan semafor murojaatini oʻtkazib yuborishingiz, barcha kritik boʻlimlarni himoya qilmasligingiz yoki umumiy tarmoqli global oʻzgaruvchilarda adashishingiz mumkin.
Semaforlardan foydalanganda ikkita muammo - oʻzaro istisno va shartli sinxronizatsiya - bir xil ibtidoiy juftliklar tomonidan dasturlashtirilgan, ammo bu turli xil tushunchalar va ularni amalga oshirishning turli mexanizmlariga ega boʻlishni xohlaymiz.
Monitorlar dasturiy ta’minot modullari boʻlib, ular semaforlar bilan bir xil samaradorlik bilan kod tuzilishini yaxshiroq ta’minlaydi. Monitor mavhum ob’ektning tasvirini inkapsullaydi, ob’ekt holatini saqlaydigan oʻzgaruvchilarni va unda operatsiyalarni amalga oshiradigan protseduralarni oʻz ichiga oladi. Tarmoq monitordagi oʻzgaruvchilarga faqat shu monitordagi protseduralarni chaqirish orqali kirishadi, shuning uchun oʻzaro istisno qilish bevosita ta’minlanadi, ikkita oqim bir monitorda bir vaqtning oʻzida ishlay olmaydi, chunki ikkita monitor protsedurasi bir vaqtda ishlamaydi. Parallel dasturda umumiy oʻzgaruvchilarga kirishni nazorat qilish uchun ma’lumotlarni inkapsulyatsiya qilish gʻoyasi E. Deykstra [16] tomonidan aytilgan va monitorlar ularga shunday nom bergan va ularning yordami bilan bir nechta klassik muammolarni hal qilishni taklif qilgan Xoara sharafiga nomlangan.
Aloqa va sinxronizatsiya uchun monitorlardan foydalanadigan parallel dastur ikkita turdagi modullarni oʻz ichiga oladi: faol oqimlar va passiv monitorlar.
Monitor umumiy resurs (resurs klassi) koʻrinishi va amalga oshirilishini guruhlash uchun ishlatiladi. Monitor quyidagi komponentlardan iborat:
interfeys - resurs tomonidan taqdim etilgan usullar;
ikkilik semafor (mutex) - oʻzaro istisno qilish uchun ishlatiladi. Har bir monitor protsedurasi ishni boshlashdan oldin mutexni ushlaydi va uni tugaguniga qadar ushlab turadi yoki shart oʻzgaruvchisida kutish funksiyasi chaqiriladi (monitorda sinxronlash uchun ishlatiladigan maxsus oʻzgaruvchi);
tana - resurs holatini aks ettiruvchi oʻzgaruvchilar.
Poyga sharoitlarini oldini olish uchun monitor mantigʻi mutexning har qanday chiqarilishidan oldin toʻgʻri boʻlishi kerak boʻlgan ba’zi invariantlarni qabul qiladi. Invariantning rostligini tekshirish, shuningdek, uning mavjudligi, qoida tariqasida, monitor loyihalovchisiga bogʻliq boʻlib qoladi.
Umuman olganda, monitor quyidagicha tavsiflanadi:

Download 0,6 Mb.

Do'stlaringiz bilan baham:
1   ...   5   6   7   8   9   10   11   12   ...   77




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish