13,14 – ma’ruza. Operatsion tizimlarda tupik (deadlock) tushunchasi


Download 0.53 Mb.
bet6/6
Sana17.06.2023
Hajmi0.53 Mb.
#1547710
1   2   3   4   5   6
Bog'liq
13,14 - маъруза

7.8. Tupiklarni oldini olish
Qanday qilib haqiqiy tizimlarda o`zaro qulfdan oldini olish mumkin? Axir biz allaqachon ulardan qochish mumkin emasligiga ishonch hosil qildik, chunki bu hech narsa ma'lum bo'lmagan kelajakdagi so'rovlar haqida ma'lumot talab qiladi. Bu savolga javob berish uchun to`rtinchi shartga qaytamiz, Hoffman va uning hamkasblari tomonidan shakllantirilgan (Kofman at Al.. 1971) va bizni muammoni hal qilish uchun kalit bera olishini kuzatamiz? Agar biz ushbu shartlardan kamida bittasi hech qachon bajarilmasligini kafolatlay olsak, o'zaro berk hodisalarni tizimli ravishda amalga oshirish mumkin bo`lmaydi (Havender, 1968).
Qotib qolish
Oddiy va faol berk hodisalash bilan chambarchas bog'liq bo'lgan muammo qotib qolishdir. Dinamik tizimda resurslar sorovi doimiy ravishda amalga oshiriladi. Qaysi resursni kim va qachon qabul qilishi haqida qaror qabul qilish uchun sizga ma'lum bir siyosat kerak. Ushbu siyosat, hatto oqilona bo'lsa ham, ular bir-biriga qulflash holatida bo'lmasa ham, ba'zi jarayonlar hech qachon xizmat qilmasligiga olib kelishi mumkin.
Misol sifatida, printerni taqsimlashni ko'rib chiqing. Tasavvur qilаmiz, tizim printerni taqsimlashni o'zaro qulflashga olib kelmasligini ta'minlaydigan ma'lum bir algoritmdan foydalanadi. Keling, bir necha jarayonlar printerni o'z ixtiyorida olishni istashgan deb taxmin qilaylik.
Mumkin bo'lgan algoritmlardan biri printerni chop etish uchun eng kichik faylga ega bo'lgan jarayonga o'tkazishni o'z ichiga oladi (bunday ma'lumot mavjud deb hisoblanymiz). Ushbu yondashuv maksimal darajada baxtli mijozlar sonini oshiradi va juda adolatli ko'rinadi. Keling, bir jarayonning chop etish uchun katta faylga ega bo'lgan ishlaydigan tizimda nima sodir bo'lishini ko'rib chiqaylik. Printer yana bir marta ozod bo'lgach, tizim tekshiriladi va eng qisqa fayl bilan jarayonni tanlaydi. Qisqa fayllardagi jarayonlar oqimi tugamasa, katta fayl jarayoni printerni hech qachon qabul qilmaydi. U faqat qattiq qotib qoladi (hatto berk hodisa qilinmasa ham, abadiy qoldiriladi.
Resurslarni taqsimlash siyosatini qo'llash orqali qotib qolishni to'xtatish mumkin "birinchi bo'lib kelganga-birinchi xizmat ko'rsatiladi asosida". Ushbu yondashuv bilan, eng uzoq davom etayotgan jarayonga xizmat ko'rsatiladi. Oxir-oqibat, har qanday berilgan jarayon oxir-oqibat navbatning eng kattasiga aylanadi va kerakli resursni oladi.
Shuni ta'kidlash kerakki, ba'zilari qotib qolishni va o`zaro berk holatni farqlamaydi, chunki har ikkala holatda ham oldinga harakat yo'q. Boshqalar esa asosiy farqni his qilishadi, chunki jarayon osonlik bilan n marta biror narsa qilishga harakat qilish uchun dasturlashtirilishi mumkin va agar barcha urinishlar muvaffaqiyatsizlikka uchrasa, boshqa narsalarni qilishga harakat qilinadi. Bloklangan jarayon esa bunday imkoniyatga ega emas.
7.9. Nazorat savollari
1. Operatsion tizimlarda tupik (deadlock) tushunchasi
2. Boshi berk jarayonlar
3. Resurslar
4. Bo’shatiladigan va bo’shatilmaydigan resurslar
5. O`zaro berk hodisalar
6. O'zaro berk hodisalarni modellashtirish
7. O'zaro berk hodisadan chiqish
8. Resursni ustuvor o'zlashtirish hisobiga tiklash
9. Orqaga qaytarish orqali tiklash
10. Jarayonlarni yo'q qilish orqali tiklash
11. O'zaro berk hodisaning oldini olish
12. Qotib qolish
Download 0.53 Mb.

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




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