Kirish Tugatish shartlari


Doiraviy (Siklik) holatni buzish


Download 44.73 Kb.
bet6/8
Sana06.01.2023
Hajmi44.73 Kb.
#1080998
1   2   3   4   5   6   7   8
Bog'liq
Mustaqil ish v-14 (2)

Doiraviy (Siklik) holatni buzish. "Tupik uchlari" bo'limidan so'nggi shartlardan qochish uchun oqilona strategiyani taklif qilish qiyin – bu davriy kutish.
Buning bir usuli-resurslarni tartibga solish. Misol uchun, barcha resurslarga noyob raqamlar berilishi mumkin va jarayonlarning ortib borayotgan tartibda resurslarni talab qilishini talab qilish mumkin. Keyin dumaloq kutish mumkin emas. Oxirgi so'rovdan so'ng va barcha resurslarni ozod qilgandan so'ng, jarayon yana birinchi so'rovni amalga oshirishga ruxsat berilishi mumkin. Shubhasiz, barchani qondiradigan tartibni topish deyarli mumkin emas. Resurslarni tartibga solishning bir nechta misolidan biri Windows 2000-da Spin-Lock ierarxiyasini yaratishdir. Spin-Lock-sinxronlashning eng oddiy usuli (jarayonlarni sinxronlashtirish masalalari tegishli ma'ruzada ko'rib chiqiladi). Spin-Lock jarayoni bilan qo'lga olinishi va ozod qilinishi mumkin. P1 jarayoni S1 Spin-qulfini ushlab turganda va S2 Spin-Lock va P2 jarayonini talab qilganda, S2 Spin-Lockni ushlab turganda va S1 Spin-Lock-ni qo'shimcha ravishda qo'lga kiritmoqchi bo'lganida klassik tupik holat yuzaga keladi. Bunga yo'l qo'ymaslik uchun barcha Spin-qulflar tartiblangan ro'yxatga joylashtiriladi. Ta'qib qilish faqat ro'yxatda ko'rsatilgan tartibda amalga oshirilishi mumkin. Hujumning yana bir usuli dumaloq kutish shartlari har bir jarayonning har bir daqiqada faqat bitta resursga ega bo'lishi mumkin bo'lgan qoidaga muvofiq harakat qilishdir. Agar ikkinchi resurs kerak bo'lsa-birinchi ozod. Shubhasiz, ko'plab jarayonlar uchun bu qabul qilinishi mumkin emas. Shunday qilib, tsiklik kutishning oldini olish texnologiyasi odatda samarasiz va resurslarga kirishni yopmasdan yopilishi mumkin.
Tupiklarni aniqlash
O'zaro blokirovkalarni aniqlash tupik vaziyatni aniqlash va unga aloqador jarayonlarni aniqlash uchun kamayadi. Buning uchun dastlabki uchta tupik holat yuzaga kelgan hollarda tsiklik kutish mavjudligini tekshirish amalga oshiriladi. Aniqlash usullari resurslarni taqsimlash grafikalaridan faol foydalanadi.
Model holatini ko'rib chiqing.
P1 jarayoni R1 resursini kutmoqda.
P2 jarayoni R2 resursini saqlaydi va R1 resursini kutadi.
P3 jarayoni R1 resursini saqlaydi va R3 resursini kutadi.
P4 jarayoni R2 resursini kutmoqda.
P5 jarayoni R3 resursini saqlaydi va R2 resursini kutadi.
Savol, bu holat tupik yoki yo'qligini va agar shunday bo'lsa, unda qanday jarayonlar mavjud. Bu savolga javob berish uchun siz rasmda ko'rsatilganidek, resurslarning grafigini loyihalashingiz mumkin. 7.3. Rasmdan ko'rinib turibdiki, dumaloq kutish holatini simulyatsiya qilish va P2, P3, P5 va ehtimol boshqalar tupik holatda bo'lgan jarayonlar mavjud. Ko'rinib turibdiki, tupik oxiri borligini aniqlash oson, lekin kompyuterda amalga oshiriladigan rasmiy algoritmlarga ham ehtiyoj bor.

Har bir turdagi bir nechta resurslar mavjud bo'lgan holatlarda ham tupik halokatlarni aniqlashning boshqa usullari mavjud. Shunday qilib, [Deutel, 1987] resurs taqsimoti grafigini kamaytirish deb nomlangan usulni va [Tanenbaum, 2002] da matritsali algoritmni tasvirlaydi.

Download 44.73 Kb.

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




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