O’rnatilgan operatsion tizimlarda semaforlar


Download 87.36 Kb.
bet2/3
Sana24.12.2022
Hajmi87.36 Kb.
#1051754
1   2   3
Bog'liq
11 O’rnatilgan operatsion tizimlarda semaforlar

OT dagi semaforlar quyidagi xususiyatlarga ega

struct ipc_perm sem_perm

Kirish huquqlarining tavsifi

struct sem *sem_base

Semafora qatorining birinchi elementiga ishora

ushort sem_nsems

Guruhdagi semaforalar soni

time_t sem_otime

So'nggi foydalanish vaqti

time_t sem_ctime

So'nggi o'zgartirish vaqti



Semaforlar ta’riflari
Semafor yadro tomonidan qayta ishlanadigan butun qiymatli obyekt bo’lib, uning uchun quyidagi elementar amallar aniqlangan:

  • semafor initsializatsiyasi, bu ish natijasida semaforga manfoy bo’lmagan qiymat ta’minlanadi:

  • semafor qiymatini kamaytiruvchi P turdagi amal. Agar semaforning qiymati nolli belgidan kamaytirilsa, amalni bajarayotgan jarayon o’z ishini to’xtatadi;

  • semaforning qiymatini oshiruvchi V turdagi amal. Agar semaforning qiymati amal bajarilishi natijasida 0 ga teng yoki undan katta bo’lsa, P amal bajarilishi vaqtida to’xtatilgan jarayonlardan biri to’xtatilgan holatdan chiqariladi;

  • semafor qiymatini kamaytiruvchi va semaforning qiymati musbat holda qolgan holda “rost” mantiqiy qiymat qaytaruvchi P turidagi shartli amal (qisqacha CP – conditional P). Agar bu amal natijasida semafor qiymati manfiy yoki nol bo’lishi kerak bo’lsa, uning ustida hech qanday amal bajarilmaydi va amal “yolg’on” mantiqiy qiymat qaytaradi.

Quyidagi 1-rasmda semaforlar qiymatiga murojaat qiladigan va uni o’zgartiradigan amallar keltirilgan.



1-rasm. Semaforlar qiymatiga murojaat qiladigan va uni o’zgartiradigan amallar
Semaforlar resurslari soni cheklangan joy, masalan restorangagi o’rinlar soni sifatida tasavvur qilish mumkin. Agar restoranda o’rindiqlar soni 50 kishilik bo’lsa va boshqa hech kim bo’lmasa, u holda semafor 50 soni bilan initsializatsiya qilinadi. Restoranga kelgan har bir odam o’rindiqlar sonini bittaga kamaytiradi (restoran zahirasini bittaga kamaytiradi) va semaforaning qiymati kamayadi. Hamma o’rindiqlar band bo’lganda, semafor nol qiymatli bo’ladi va restoranga hech kim kira olmaydi. Umidli restoranga tashrif buyurganlar kimningdir ovqatlanib bo’lishini (o’rindiqlar zahirasining oshishini) kutadi. O’rin bo’shagach, semafor qiymati oshadi va o’rin zahirasi yana oshadi.
Semaforlarga faqat quyidagi amallar bilan murojaat qilish mumkin:
Download 87.36 Kb.

Do'stlaringiz bilan baham:
1   2   3




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