Buferni taqdim etish C dasturlash tilida quyidagicha ko’rinishda bo’lishi mumkin: Ishlab chiqaruvchi algoritmi sxemasi: Mos ravishda iste’molchi-jarayonni amalga oshirish:
Ushbu kodlardan ixtiyoriy tizimda ishlab chiquvchi – iste’molchi sxemasini amalga oshirish uchun shablon (pattern) sifatida qo’llash mumkin.
- Jarayonlarning bevosita aloqasi va ular harakatini sinxronlash uchun mumkin bo’lgan mexanizmlari. Bulardan eng ko’p tarqalgani – xabarlar tizimi; buning uchun jarayonlar o’zaro umumiy o’zgaruvchilarga murojaat qilmasdan aloqa qiladi.
- Jarayonlar o’rtasida aloqa vositasini quyidagi ikkita amal ta’minlaydi:
- send (message ) – message xabarini uzatish; xabar o’lchami o’zgarmas yoki o’zgaruvchan bo’lishi mumkin;
- receive (message ) – message buferiga xabar qabul qilish.
- Agar P va Q jarayonlar o’zaro aloqani talab qilsa, ularga quyidagilar zarur bo’ladi:
- Bir biri bilan aloqa o’rnatish (communication link)
- Xabarlarni send/receive ko’rinishda almashish.
- Aloqani amalga oshirish fizik (umumiy xotira, shina qurilmasi) yoki mantiqiy (mantiqiy xususiyatli) bo’lishi mumkin.
Jarayonlar o’rtasida aloqa mexanizmini amalga oshirishda quyidagi savollarga yechim topish kerak bo’ladi: - Aloqa qanday o’rnatiladi?
- Ikkitadan ko’p jarayonlar bilan aloqa o’rnatish mumkinmi?
- Berilgan ikkita jarayon o’rtasida nechta aloqa o’rnatish mumkin?
- Aloqa chizig’ining o’tkazish qobiliyati qanday?
- Xabar uzunligi aloqa chizig’i bo’yicha o’zagrmas yoki o’zgaruvchi hisoblanadimi?
- Aloqa yo’naltirilmagan yoki ikkiyo’nalishli (dupleks) hisoblanadimi?
- Jarayonlarning bevosita aloqasi (direct communication) oshkor ravishda bir-birini nomlab oladi – nomlari yoki adresi (ko’rsatkichlari) bo’yicha. Adres (ko’rsatkich)lar chaqiriladigan aloqa buyruqlari bo’lishi mumkin, masalan:
- send (P, message ) – P jarayonga xabarni yuborish;
- receive (Q, message ) – Q jarayondan xabarni olish.
- Ushbu kommunikatsiya usulida aloqa chizig’i xossalari nazorat ro’yxati bo’yicha quyidagicha bo’ladi:
- aloqa avtomatik o’rnatiladi (uni operatsion tizim yoki alohida kommunikatsiya vositasi amalga oshiradi).
- Aloqa faqat o’zaro bog’liq jarayonlarning bitta juftligini birlashtiradi.
- Jarayonlarning har bir juftligida hamma vaqt faqat bitta aloqa bo’ladi.
- Aloqa yo’naltirilmagan bo’lishi mumkin, lekin, qoida bo’yicha u ikki yo’nalishli bo’ladi (jarayon boshqasidan oshkor ravishda xabar qabul qilishi va unga xabar uzatishi mumkin).
Do'stlaringiz bilan baham: |