Skip to main content

Hvad er interprocess -kommunikation?

Interprocess Communication (IPC) er en gruppe af teknikker, der bruges til computerprogrammering, der giver forskellige stykker software mulighed for at interagere.IPC letter ofte af et computeroperativsystem, selvom der findes alternative metoder.Den nøjagtige form for denne kommunikation mellem software kan variere, lige fra direkte beskeder til et centralt depositum, hvor information gemmes og hentes.Interprocess -kommunikation kan give fordele såsom større ydeevne, færre computerressourcer, der forbruges og forbedret sikkerhed.

I programmeringsverdenen tales software om med hensyn til en proces eller et enkelt stykke kode, der kan køres eller udføres påEn computers centrale behandlingsenhed (CPU).Mange applikationer bruger faktisk mere end en proces, hvilket kan øge ydeevnen og stabiliteten.En webbrowser med flere åbne sider kan muligvis bruge en separat proces til at indlæse hver side;Dette isolerer hver side fra de andre og forhindrer, at en dårligt opført webside går ned i hele browseren.I dette eksempel kommunikerer hver proces, der er ansvarlig for at gengive en webside, med en eller flere processer, der håndterer andre aspekter af browseren, såsom brugergrænsefladekomponenter.

De fleste computeroperativsystemer giver flere forskellige mekanismer til, at interprocess -kommunikation finder sted.Nogle andre softwareteknologier tilbyder også support til IPC.Desuden kan IPC bruges enten på en enkelt computer eller på tværs af et netværk.Disse mekanismer kan variere i, hvordan de implementeres, men de fleste kan grupperes i et par kategorier baseret på, hvordan kommunikationen finder sted.

I nogle tilfælde udveksles meddelelser direkte mellem processer, ofte på en envejs eller asynkron måde.Et par IPC -metoder, der fungerer på denne måde, inkluderer signaler, rør og stikkontakter.Interprocess -kommunikation kan også finde sted ved hjælp af et specifikt sted, hvor der kan fås adgang til data ved mere end en proces.Et eksempel på dette er delt hukommelse, en teknik, hvor flere processer får adgang til den samme del af en computers hukommelse for at udveksle information.Metoden, som en programmør kan vælge, afhænger af den hastighed og volumen af dataudveksling, der er nødvendig og andre overvejelser.

Der er mange grunde til, at en programmør muligvis ønsker at bruge interprocess -kommunikation i deres softwarekreationer.Opdeling af en stor applikation i mange mindre processer, der kommunikerer via IPC, kan øge ydeevnen såvel som sikkerhed.Et program kan starte og afslutte processer efter behov i stedet for alle komponenter, der kører på én gang og konsumerer hardware -ressourcer.Hvis en del af et program har brug for særlig adgang til en computers hardware eller anden kørende software, kan en eller flere processer fungere under en administrator- eller "rod" -konto, mens resten af programmet kører som en almindelig bruger.