180
10-ТАРАУ
ПРОЦЕССАРАЛЫҚ ӨЗАРА
ӘРЕКЕТТЕСУЛЕР
ПРОЦЕССАРАЛЫҚ ӨЗАРА ӘРЕКЕТТЕСУДІҢ ТҮРЛЕРІ
Қазіргі кезде күрделі бағдарламалардың мағыналы бөлігінде,
процессаралық өзара әрекеттесудің осындай немесе басқа түрлері де
кездеседі. Бұл келесі сатылы кезеңдерден тұратын, бағдарламалық
жобалау мен табиғи эволюция тәсілдерімен дәйектеледі:
1) Өзінің
кодында, өзінің жұмысы үшін барлық қажетті
нұсқаулықтардан
тұратын
монолитті
бағдарламалар.
Мұндай
бағдарламалардың
ішіндегі
ақпарат
алмасу
функциялардың
параметрлерін беру және жаҺандық
айнымалыларды қолдану
көмегімен жүреді. Мұндай бағдарламаларды іске қосу үшін барлық
қажетті жұмысты орындайтын бір процесс пайда болады;
2) Нақты анықталған шақыру интерфейсті жеке бағдарламалық
модульдерді құрайтын модульдік бағдарламалар. Модульдерді
бағдарламаға
біріктіру, орындалатын файлдың құрастырылуы
(статикалық құрастыру немесе
static linking )кезінде немесе
бағдарламаның орындалуы (динамикалық құрастыру немесе
dynamic
linking)
кезінде
іске
асады.
Модульдік
бағдарламалардың
артықшылығы
кейбір
қолданбалы
кезең
жетістіктерімен
тұжырымдалады: бір модуль басқасымен алмасуы мүмкін.
Дегенмен
модульдік бағдарлама бәрібір бір процесті ғана ұсына алады,
міндеттерді шешу үшін ақпараттар процестің ішінде функция
параметрлері ретінде жіберіледі;
3) Процесаралық өзара әрекеттесуді қолданатын бағдарламалар.
Мұндай бағдарламалар жалпы міндетті шешу үшін бағдарламалар
кешенін жасап шығарады. Әр іске асырылған бағдарламалар бір немесе
бірнеше процесті құрайды. Міндеттерді шешуге арналған процестердің
әрқайсысы өзінің жеке ақпараттарын
пайдаланады және тек өзінің
жұмысының нәтижелерімен басқа процестермен алмасады немесе
әртүрлі процес арасында бөлінетін, жалпы ақпараттар аумағымен
181
жұмыс жасайды. Процестің ерекше күрделі міндеттерін шешу үшін әр
түрлі физикалық компьютерлерде іске асады және желі арқылы өзара
әрекеттеседі. Процессаралық өзара әрекеттесу
көп қолданбалығымен
тұжырымдалады, яғни, өзара әрекеттесуші процестер, өзара
әрекеттесуші интерфейстерді сақтау кезінде бір-біріне қатысусыз
алмаса алады. Басқа артықшылығы, есептелетін жүктелім
процесс
арасында таралады. Бұл операциялық жүйеге, бағдарламалық кешеннің
жеке бөліктерінің орындалуы кезінде басымдылықтарын басқаруға
мүмкіндік береді, ресурс сыйымды процестердің ресурс сандарының
аздығы немесе көптігін ерекшелейді.
Ортақ міндетті шешетін процестерді іске асыру үшін операциялық
жүйе олардың арасындағы өзара әрекеттесуші құралдарымен
қамтамасыз етілуі тиіс. Өзара әрекеттесу құралдарын ұсыну —
қолданбалы бағдарламалардың емес операциялық жүйелердің міндеті,
себебі алмасу механизмінің өзіне қолданбалы
бағдарламаның әсерін
болдырмау қажет, одан басқа алмасу механизімін сүйемелдеу
пайдаланушының қарапайым процесіне қолжетімсіз, ресурстарға
қолжетімділікті талап етуі мүмкін.
Процесс арасындағы өзара әрекеттесу типтік механизмдері келесі
міндеттерді шешу үшін арналған:
■
Бір процесстен екіншісіне ақпараттарды жіберуі;
■
Бірнеше процесстердің бір деректерді бірігіп пайдалануы;
■
Процесстер күйінің өзгеруін хабарлау.
Достарыңызбен бөлісу: