1. Apparat ta’minoti va dasturiy ta’minot o‘rtasidagi bog‘liqlik qanday
Download 0.55 Mb.
|
Документ 5
- Bu sahifa navigatsiya:
- 36. Sinxronizatsiyalash mexanizmlari
35. Semaforalar tushunchasi
• Jarayonlarning harakatini sinxronlashtirish uchun taklif qilingan birinchi mexanizmlardan biri semaforlar bo'lib, ularning kontseptsiyasi 1965 yilda Deykstra tomonidan ishlab chiqilgan. • Semafor - nomanfiy qiymatlarni qabul qiluvchi butun tipli o'zgaruvchi bo’lib, uni ishga tushirish vaqtidan tashqari har qanday jarayon orqali kirish mumkin. U ikkita atomar amallar orqali amalga oshiriladi: P (daniyacha proberen so'zidan - tekshirish) va V (verhogendan - oshirish)). Ushbu operatsiyalarning klassik ta'rifi quyidagicha: P(S): S == 0 bo'lganda jarayon bloklanadi; S = S - 1; V(S): S = S + 1; • Bu yozuv quyidagilarni bildiradi: S semaforida P operatsiyani bajarishda avval uning qiymati tekshiriladi. Agar u 0 dan katta bo'lsa, S dan 1 ayiriladi. Agar u 0 dan kichik yoki 0 ga teng bo'lsa, S jarayoni 0 dan katta bo'lguncha bloklanadi, shundan so'ng S dan 1 ayiriladi. S semaforida V amal bajarilganda uning qiymatiga 1 oshiriladi. Yaratish vaqtida semafor har qanday manfiy bo'lmagan qiymat bilan ishga tushirilishi mumkin. Semaforlar • Bunday semafora-o'zgaruvchilar jarayonlarning o'zaro ta'sirini tashkil qilishning turli muammolarini hal qilish uchun muvaffaqiyatli ishlatilishi mumkin. Bir qator dasturlash tillarida ular bevosita til sintaksisiga kiritilgan (masalan, ALGOL-68 da), boshqa hollarda ular maxsus tizim chaqiruvlari yordamida amalga oshiriladi. • Ushbu butun sonli o'zgaruvchi OT yadrosining manzilli fazosida joylashgan. OT, masalan, mos keladigan tizim chaqiruvlarini bajarish paytida uzilishlarni o'chirish usulidan foydalangan holda, P va V amallarining atomarligini ta'minlaydi. Agar P amalni bajarish jarayonida bir nechta jarayonlar bloklangan bo'lsa, ularni blokdan chiqarish tartibi ixtiyoriy bo'lishi mumkin. • Shuni ta'kidlash joizki, bu yerda semaforlar ikki maqsadga erishish uchun ishlatiladi: (1) kritik sohada o'zaro istisno qilishni tashkil etish va (2) jarayonlarning ishlash tezligini o'zaro sinxronlashtirish 36. Sinxronizatsiyalash mexanizmlari Sinxronizatsiya mexanizmlari – OT vositalaridan foydalangan holda sinxronizatsiyani amalga oshirishning yuqori darajadagi variantlaridir. •Uning afzalligi - bu kritik seksiyaga kirishda kutish vaqtini hisobga olish imkoniyatidir. •Ular kompilyatorlarda dasturlashtirilgan yoki apparat vositalaridan (semaforlar, monitorlar, xabarlar) foydalangan holda amalga oshiriladi Sinxronizatsiyalash mexanizmlari •Bir nechta jarayonlar yoki oqimlar parallel ravishda ishlayotgan bo'lsa, umumiy ajratilgan resurslardan foydalanishda ziddiyatlar paydo bo'lishi mumkin. Bunday resurslar kritik deb ataladi. •Oqimlarni sinxronlashtirishning muhim tushunchasi dasturning "kritik seksiyalar" tushunchasidir. •Kritik seksiyalar - dasturning bir qismi bo'lib, agar shu qismiga tegishli o'zgaruvchilar qachonki ushbu qism bajarilishi hali tugallanmagan vaqtda boshqa oqimlar tomonidan o'zgartirilsa, uning bajarilish natijasi oldindan aytib bo'lmaydigan darajada o'zgarishi mumkin. Sinxronizatsiyalash mexanizmlari • Sinxronlash mexanizmi jarayonlarni kritik seksiyaga kirishni kutish va bo'sh siklda jarayonning ancha uzoq aylanishini, ya'ni qimmatli protsessor vaqtini behuda sarflashni oldini olishga qaratiladi. • Oddiy dasturlash tillari yordamida tuzilgan algoritmlarda boshqa jiddiy kamchiliklar ham mavjud. Masalan, kompyuter tizimida o'zaro munosabatdagi ikkita jarayon mavjud: ulardan biri - H - yuqori ustuvorlikka ega, ikkinchisi - L - past ustuvorlikka ega. • Rejalashtiruvchi shunday sozlansinki, yuqori ustuvor jarayon ishga tayyor bo'lganda past ustuvor jarayonni o’rnini bir necha bor olib qo’yadi (agar undan yuqoriroq ustuvor jarayon paydo bo'lmasa) va protsessorni CPU burst davomida egallab turadi. • Shu sababli, agar L jarayoni o'zining kritik sohasida bo'lsa va H jarayoni protsessorni qabul qilib, kritik sohasiga kirishga yaqinlashsa, shu joyda tupik vaziyat paydo bo’ladi. • H jarayoni kritik sohasiga kira olmay siklga tushib qoladi va L jarayoniga kritik sohadan chiqish boshqaruvi berilmaydi Download 0.55 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling