Међупроцесна комуникација
Изглед
(преусмерено са Inter-process communication)
Међупроцесна комуникација се у програмирању користи за размјену порука, дијељење ресурса и синхронизацију различитих процеса унутар једног рачунарског система. Под овим термином се најчешће подразумијевају семафори, редови за поруке и дијељена меморија, који су производ развојног тима јуникса „System V release 4“ (UNIX SVR4) а данас постоје на већини модерних оперативних система, али ту потпада и било који вид комуникације различитих процеса, попут сигнала, проточних цијеви („пајпова“), закључавања датотека ради синхронизације приступа ресурсима, па чак и локалног мрежног интерфејса попут сокета јуникса BSD.
Главне ИПЦ поступци
[уреди | уреди извор]Поступак | Кратак опис | Обезбеђује (оперативни системи или друга окружења) |
---|---|---|
Датотеке | Запис који се чува на диску којем може приступити по имену било који процес | Већина оперативних система |
Сигнали | Систем порука послатих од једног процеса другоме, обично се не користи за складиштење информација, већ за слање команди. | Већина оперативних система; неки системи, попут Виндоус НТ подсистема, примењују сигнале само у Ц библиотекама и не пружају никакву подршку за њихову употребу као метод ИПЦ-а. |
Сокет | Ток података послат преко мрежног интерфејса, или неком другом процесу на истом или на другом рачунару | Већина оперативних система |
Ред порука | Анонимни ток података сличан каналу, међутим подаци се чувају и преузимају у пакетима. | Већина оперативних система |
Канали | Двосмерни ток података повезан преко стандардног улаза и излаза и чита се знак по знак. | Сви ПОСИКС системи, Виндоус |
Назначени канали | Ток који се спроводи кроз датотеку на фајл систему, уместо стандардног улаза и излаза. | Сви ПОСИКС системи, Виндоус |
Семафори | Једноставна структура која синхронизује нити или процесе који делују над заједничким ресурсима. | Сви ПОСИКС системи, Виндоус |
Дељена меморија | Приступ дат вишеструким процесима над истом меморијом, омогућавајући све да је мењају и читају измене извршене од стране других процеса. | Сви ПОСИКС системи, Виндоус |
Ппрослеђивање порука (ништа се не дели) | Слично реду порука. | Користи се у МПИ парадигми, Јава РМИ, ЦОРБА, други |
Меморијски мапирана датотека | Датотека мапирана на РАМ која може бити измењена директном променом меморијске адресе. | Сви ПОСИКС системи, Виндоус |