• Semaforlar ta’riflari
  • X bob O‘rnatilgan operatsion tizimga kirish




    Download 157.38 Kb.
    bet5/6
    Sana28.05.2022
    Hajmi157.38 Kb.
    #22232
    1   2   3   4   5   6
    Bog'liq
    X bob O‘rnatilgan operatsion tizimga kirish
    32272, Laboratoriya ishi-5, 7-16 lab ishi Sherali, DT sifati, i0OJITJpvjmo71kpoHwpfonMZuJdOxYrBo5fJ8l6
    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: wait() va signal(). wait() amali jarayon zahiraga murojaat qilishni hohasa chaqiriladi. Bu tashrif buyuruvchining bo’sh stolga o’tirishga urinishiga ekvivalent. Agar bo’sh o’rin bo’lmasa, yoki semafor noldan katta bo’lsa, u holda tashrif buyuruvchi zahirani band qilishi (o’tirishi) mumkin. Agar bo’sh o’rindiq bo’lmasa, unda semaforning qiymati nol bo’ladi va jarayon semaforning qiymati noldan katta bo’lishini kutadi. signal() amali jarayon zahiradan foydalanib bo’linganidan so’ng chaqiriladi. Quyidagi sxema semaforni sanash uchun qo’llaniladi:

    Tarixan, wait() amali P (nemis tilidan “Proberen” – urinib ko’rish) deb nomlangan, signal() esa V (nemis tilidan “Verhogen” – oshirish) deb belgilangan.
    Kamchiliklari:
    1. bandlikda kutish – semafor jarayonida davomli sikl;
    2. spinlock - bandlikda kurish amalga oshirilganda markaziy prosessorni (CPU) band qiladi.
    Semaphore (ing. Semaphore) - bu hisoblagichga asoslanib, ikkita atom operatsiyasi bajarilishi mumkin bo'lgan jarayonlar va oqimlarning sinxronlashuvi: qiymatni bittaga oshirish va kamaytirish, shu bilan hisoblagichning nol qiymatiga pasayish jarayonga taqiq qo`yiladi. U yanada murakkab sinxronizatsiya mexanizmlarini yaratish uchun ishlatiladi va parallel vazifalarni sinxronlashtirishda, umumiy xotira orqali ma'lumotlarni uzatishda, tanqidiy bo'limlarni himoya qilishda, shuningdek uskunaga kirishni boshqarish uchun fo`ydalaniladi.

    Download 157.38 Kb.
    1   2   3   4   5   6




    Download 157.38 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    X bob O‘rnatilgan operatsion tizimga kirish

    Download 157.38 Kb.