Мухаммад Ал-Хоразмий номидаги Тошкент Ахборот Технологиялари Университети




Download 1,42 Mb.
Pdf ko'rish
bet9/26
Sana15.05.2024
Hajmi1,42 Mb.
#236504
1   ...   5   6   7   8   9   10   11   12   ...   26
Bog'liq
kmp tsh2 atmega128gb

 

-10- 

Operatsion tizimlarda semaforalar 

 

Informatika fanida semafor - bu bir nechta jarayonlar orqali umumiy 
manbaga kirishni boshqarish va bir vaqtning o'zida ko'p vazifali operatsion 
tizim kabi muhim tizim muammolaridan qochish uchun ishlatiladigan 
o'zgaruvchan yoki mavhum ma'lumotlar turi. Arzimas semafor-bu dasturchi 
tomonidan aniqlangan shartlarga qarab o'zgartiriladigan (masalan, 
kattalashtirilgan yoki kamaytirilgan yoki o'zgartirilgan) oddiy o'zgaruvchi. 

Haqiqiy tizimda ishlatilgan semafor haqida o'ylashning foydali usuli-bu 
ma'lum bir manbaning qancha birligi borligini qayd etish, bu yozuvni 
xavfsiz tarzda sozlash operatsiyalari (ya'ni, poyga sharoitidan qochish). sotib 
oling yoki ozod bo'ling va agar kerak bo'lsa, resurs birligi mavjud 
bo'lguncha kuting. 

Semaforlar - poyga sharoitining oldini olishda foydali vosita; ammo, ulardan 
foydalanish hech qachon dasturning bu muammolardan xoli bo'lishining 
kafolati emas. Resurslarni o'zboshimchalik bilan sanashga ruxsat beradigan 
semaforlar sanash semaforlari, 0 va 1 qiymatlari bilan cheklangan 
semaforalar (yoki qulflangan/qulflanmagan, mavjud emas/mavjud) ikkilik 
semaforlar deb ataladi va qulflarni amalga oshirish uchun ishlatiladi. 

Semafor kontseptsiyasi Gollandiyalik kompyuter olimi Edsger Dijkstra 
tomonidan 1962 yoki 1963 yilda , Dijkstra va uning jamoasi Electrologica 
X8 uchun operatsion tizimni ishlab chiqish paytida ixtiro qilingan. Oxir -
oqibat, bu tizim ko'p dasturli tizim deb nomlandi. 

Aytaylik, kutubxonada 10 ta bir xil o'quv xonasi mavjud bo'lib, ular bir 
vaqtning o'zida bitta talaba tomonidan ishlatilishi mumkin. Talabalar, agar 
ular o'qish xonasidan foydalanmoqchi bo'lsalar, old stoldan xona so'rashi 
kerak. Agar bo'sh xonalar bo'lmasa, talabalar kimdir xonani tark etmaguncha 
stolda kutishadi. Talaba xonadan foydalanishni tugatgandan so'ng, talaba 
stolga qaytib, bitta xona bo'shab qolganligini ko'rsatishi kerak. 

Eng sodda tarzda, reseptsiya xodimi faqat bo'sh xonalar sonini biladi, ular 
faqat to'g'ri bilishadi, agar hamma talabalar o'z xonalarini ro'yxatdan 
o'tganlarida ishlatsalar va ularni tugatganlarida qaytarib berishsa. . Talaba 
xonani so'raganda, xizmatchi bu raqamni kamaytiradi. Talaba xonani 
bo'shatganda, xizmatchi bu raqamni oshiradi. Xonani xohlagancha ishlatish 
mumkin, shuning uchun xonalarni oldindan bron qilish mumkin emas. 

Bu stsenariyda old stolning hisoblagichi hisoblash semaforini, xonalar 
manba, talabalar esa jarayonlarni/iplarni ifodalaydi. Bu stsenariyda semafor 
qiymati dastlab 10, hamma xonalar bo'sh. Talaba xonani so'raganda, ularga 
ruxsat beriladi va semafor qiymati 9 ga o'zgartiriladi. Keyingi talaba 
kelganidan keyin u 8 ga tushadi, keyin 7 ga va hokazo. Agar kimdir xona 


so'rasa va semaforning joriy qiymati 0 bo'lsa, ular xona bo'shatilguncha 
kutishga majbur bo'ladi (hisob 0dan oshganda). Agar xonalardan biri qo'yib 
yuborilgan bo'lsa -da, lekin bir nechta talaba kutayotgan bo'lsa, u holda 
xonani egallaydiganni tanlash uchun har qanday usuldan foydalanish 
mumkin (masalan, FIFO yoki tanga aylantirish). Va, albatta, talaba o'z 
xonasini bo'shatib yuborgani haqida yozuvchiga xabar berishi kerak, aks 
holda bunday talaba xonadan chiqib ketayotganda noqulay vaziyat yuzaga 
kelishi mumkin (ular darsliklarini yig'ishtirmoqda va hokazo). va boshqa 
talaba xonadan chiqib ketishidan oldin kiradi. 

Resurslar havzasiga kirishni boshqarish uchun foydalanilganda, semafor 
qancha resurslar bo'sh ekanligini kuzatadi; u qaysi manbalar tekin ekanligini 
kuzatmaydi. Muayyan erkin resursni tanlash uchun boshqa mexanizm 
(ehtimol ko'proq semaforlarni o'z ichiga olishi mumkin) talab qilinishi 
mumkin. 


Paradigma ayniqsa kuchli, chunki semaforlar soni turli xil harakatlar uchun 
foydali tetik bo'lishi mumkin. Yuqoridagi kutubxonachi, o'quvchilar 
qolmaganida, o'quv zalining chiroqlarini o'chirib qo'yishi yoki ko'p xonalar 
band bo'lganda xonalar juda bandligini ko'rsatuvchi belgi qo'yishi mumkin. 

Protokolning muvaffaqiyatli bo'lishi uchun ilovalar uni to'g'ri bajarilishini 
talab qiladi. Hatto bitta jarayon ham noto'g'ri bajarilsa, adolat va xavfsizlik 
buzilishi mumkin (bu dastur sekin harakat qilishi, tartibsiz ishlashi, osib 
qo'yilishi yoki ishdan chiqishi mumkin). Bunga quyidagilar kiradi: 

*manbani so'rash va uni chiqarishni unutish; 

*hech qachon so'ralmagan resursni chiqarish; 

*resursni keraksiz uzoq vaqt ushlab turish; 

*resursni avval talab qilmasdan ishlatish (yoki uni chiqargandan keyin). 

Agar barcha jarayonlar ushbu qoidalarga amal qilsa ham, har xil semaforlar 
tomonidan boshqariladigan turli xil manbalar mavjud bo'lganda va 
jarayonlar bir vaqtning o'zida bir nechta resurslardan foydalanishi kerak 
bo'lganda, ko'p manbali tiqilib qolishi mumkin. 




Download 1,42 Mb.
1   ...   5   6   7   8   9   10   11   12   ...   26




Download 1,42 Mb.
Pdf ko'rish

Bosh sahifa
Aloqalar

    Bosh sahifa



Мухаммад Ал-Хоразмий номидаги Тошкент Ахборот Технологиялари Университети

Download 1,42 Mb.
Pdf ko'rish