Next              Up                Back               Contents

Επόμενο:Προγραμματιστικές Εργασίες Πάνω: Κεφάλαιο 4o : Επικοινωνία διεργασιών Πίσω: 4.7 Περίληψη


 

ΑΝΑΦΟΡΕΣ

 

Η γενική ιδέα της χρήσης καναλιών επικοινωνίας για αποστολή πληροφοριών ανάμεσα σε διεργασίες είναι κοινή στις γλώσσες προγραμματισμού. Το περιβάλλον προγραμματισμού UNIX [Ritchie and Thompson, 1974] χρησιμοποιεί “σωλήνες” για την αποστολή δεδομένων ανάμεσα στις διεργασίες. Η γλώσσα Occam [Inmos, 1985] χρησιμοποιεί μεταβλητές καναλιών για να περάσει δεδομένα από την διεργασία αποστολέα στη διεργασία παραλήπτη. Τα κανάλια σε Occam έχουν χωρητικότητα για ένα μόνο μήνυμα και μπλοκάρουν την διεργασία εγγραφής όταν το κανάλι γεμίσει. Η γλώσσα Poker επιτρέπει σε κάθε διεργασία να δηλώνει “θύρες” (ports) που λειτουργούν όπως τα κανάλια, με την διαφορά ότι μόνο μια διεργασία εγγραφής και μια ανάγνωσης επιτρέπεται σε κάθε θήρα [Snyder and Socha, 1986].

To παράλληλο παράδειγμα Παραγωγού-Καταναλωτή εμφανίζεται στον Dijkstra [1968a]. H χρήση καναλιών στην Multi-Pascal για παράλληλους αλγόριθμους διασωλήνωσης παρουσιάζονται στους Lester και Guthrie [1988]. Ο αλγόριθμος διασωλήνωσης με ανάδρομη αντικατάσταση παρουσιάζεται στους Bertsekas και Tsitsiklis [1968]. O σειριακός διτονικός αλγόριθμος ταξινόμησης με συγχώνευση ανακαλύφθηκε από τον Batcher [1968]. Δες Bitton et al για μια περιεκτική περίληψη των παράλληλων αλγόριθμων ταξινόμησης.

Ο αλγόριθμος κόσκινο πρώτων αριθμών (prime number sieve) που περιγράφεται στην προγραμματιστική εργασία 1 είναι παραλλαγή αυτού που αναφέρεται βρέθηκε στον Bokhari [1987].


     Next              Up                Back               Contents

Επόμενο:Προγραμματιστικές Εργασίες Πάνω: Κεφάλαιο 4o : Επικοινωνία διεργασιών Πίσω: 4.7 Περίληψη