IPC
Staat voor "Interprocess Communication." IPC is een functie van moderne besturingssystemen waarmee processen met elkaar kunnen communiceren. Dit verbetert de prestaties doordat gelijktijdig uitgevoerde processen systeembronnen efficiënt kunnen delen.
De twee belangrijkste methoden voor communicatie tussen processen zijn het delen van geheugen en het uitwisselen van berichten. Bij het delen van geheugen is sprake van indirecte communicatie, omdat het besturingssysteem het gebruik en de toewijzing van RAM beheert. Voor het uitwisselen van berichten is actieve communicatie tussen processen nodig. Een proces kan bijvoorbeeld aan een ander proces exclusieve toegang tot een specifieke bron vragen, zoals een bestand. Het uitwisselen van berichten is een effectieve manier om ervoor te zorgen dat twee toepassingen niet tegelijkertijd toegang hebben tot hetzelfde gegevensblok.
Voorbeelden van IPC
Hieronder staan enkele veelgebruikte manieren waarop besturingssystemen communicatie tussen processen gebruiken:
- Bestandstoegang - de toegang tot bestanden op een lokaal of extern opslagapparaat beperken tot één proces tegelijk
- Netwerkcommunicatie - ervoor zorgen dat gegevens die via een netwerkssocket worden verzonden elkaar niet overlappen
- Gedeeld geheugen - meerdere processen toestaan hetzelfde geheugenblok te gebruiken, vaak met behulp van een buffer die vrije geheugenruimte dynamisch toewijst
- Signalen - systeemberichten naar processen sturen om ze op de hoogte te stellen van een gebeurtenis, vergelijkbaar met een interrupt
Test je kennis