Διαδιεργασιακή επικοινωνία
Διαδιεργασιακή επικοινωνία (αγγλ.: InterProcess Communication, IPC) ονομάζεται στην πληροφορική ένα σύνολο μηχανισμών που παρέχουν τα λειτουργικά συστήματα των ηλεκτρονικών υπολογιστών, οι οποίοι διευκολύνουν την ανταλλαγή δεδομένων και τον συγχρονισμό μεταξύ ταυτοχρόνως εκτελούμενων διεργασιών μέσω δομών δεδομένων του πυρήνα. Τέτοιοι μηχανισμοί είναι απαραίτητοι στα μοντέρνα λειτουργικά συστήματα όπου, χάρη στον μηχανισμό της εικονικής μνήμης, κάθε διεργασία έχει τον δικό της ιδιωτικό χώρο εικονικών διευθύνσεων στον οποίον έχει πρόσβαση μόνο αυτή και ο πυρήνας. Προκειμένου να υπάρχει μία στοιχειώδης "προστασία μνήμης" μεταξύ διαφορετικών διεργασιών, καμία διεργασία δεν έχει δικαίωμα ανάγνωσης ή εγγραφής στον χώρο διευθύνσεων των υπολοίπων. Αν λοιπόν χρειάζεται δύο διαφορετικές διεργασίες να επικοινωνήσουν μεταξύ τους ή να ανταλλάξουν δεδομένα, αυτό μπορεί να γίνει μόνο μέσω του συστήματος αρχείων (π.χ. μία διεργασία να γράψει ένα αρχείο και μία άλλη να το διαβάσει) ή μέσω μίας μεθόδου διαδιεργασιακής επικοινωνίας. Με το προγραμματιστικό μοντέλο των υποδοχών (sockets) οι διεργασίες οι οποίες επικοινωνούν μπορούν να εκτελούνται σε διαφορετικούς υπολογιστές που διασυνδέονται μέσω ενός δικτύου.

Σε πολλές περιπτώσεις ένα εκτελούμενο πρόγραμμα (η "μητρική" ή "γονική" διεργασία) δημιουργεί δευτερεύουσες ("θυγατρικές") διεργασίες ώστε να εκμεταλλευτεί πιθανά οφέλη από τον ταυτοχρονισμό. Με αυτόν τον τρόπο, σε ένα παράλληλο σύστημα οι υπολογισμοί που απαιτούνται από μία εφαρμογή μπορούν να κατανεμηθούν σε πολλαπλούς επεξεργαστές με τον καθένα να εκτελεί διαφορετική διεργασία, ενώ σε ένα σειριακό σύστημα αν μία διεργασία ανασταλεί (π.χ. σε μία κλήση συστήματος) καθώς περιμένει την απελευθέρωση ενός πόρου (π.χ. πρόσβαση στον σκληρό δίσκο) ή μία είσοδο από τον χρήστη), κάποια άλλη διεργασία μπορεί να συνεχίσει τους υπολογισμούς. Είναι φανερό επομένως ότι η διαδιεργασιακή επικοινωνία δεν είναι απαραίτητη μόνο για την ανταλλαγή δεδομένων μεταξύ ανεξάρτητων διεργασιών, αλλά και για τον συντονισμό στενά συνεργαζόμενων διεργασιών οι οποίες εκτελούνται παράλληλα, σε συστήματα πολλαπλών επεξεργαστών, ή ψευδοπαράλληλα, δηλαδή με ταχύτατη και διαφανή εναλλαγή πολλαπλών ταυτοχρόνως εκτελούμενων διεργασιών στον μοναδικό επεξεργαστή.
Q1860
αγγλ.
Concept
Q4027615
πληροφορική
Concept
Q9135
λειτουργικά συστήματα
Concept
Q68
ηλεκτρονικών υπολογιστών
Concept
Q1414548
ταυτοχρόνως
Concept
Q205663
διεργασιών
Concept
Q175263
δομών δεδομένων
Concept
Q9662
πυρήνα
Concept
Q189401
εικονικής μνήμης
Concept
Q66221
διευθύνσεων
Concept
Q174989
συστήματος αρχείων
Concept
Q82753
αρχείο
Concept
Q1301371
δικτύου
Concept
Q180634
παράλληλο σύστημα
Concept
Q722192
κλήση συστήματος
Concept
Q4439
σκληρό δίσκο
Concept
None
είσοδο
UNK
Q751436
Διαδιεργασιακή επικοινωνία
Concept
part of
part of