Παράλληλα και κατανεμημένα συστήματα: Διαφορά μεταξύ των αναθεωρήσεων

Περιεχόμενο που διαγράφηκε Περιεχόμενο που προστέθηκε
JohnMad (συζήτηση | συνεισφορές)
JohnMad (συζήτηση | συνεισφορές)
Γραμμή 154:
[[Image:BOINC logo July 2007.svg|300px|thumb|right|Το [[BOINC]] είναι μία πλατφόρμα ενδιάμεσου λογισμικού για υποστήριξη κατανεμημένων εφαρμογών υπολογιστικού πλέγματος, οι οποίες αξιοποιούν την πληθώρα υπολογιστών συνδεδεμένων στο Internet για να επιτύχουν εξαιρετικά υψηλές υπολογιστικές επιδόσεις]]
 
Με βάση τα προηγούμενα, ενδιάμεσο λογισμικό αποτελεί μία βιβλιοθήκη η οποία υλοποιεί το MPI, λειτουργώντας έτσι ως μεσολαβητής για την εύκολη και διαφανή ανάπτυξη παράλληλων εφαρμογών μεταβίβασης μηνυμάτων σε πολυυπολογιστές. Ωστόσο το MPI, λόγω του ρόλου και της φύσης του, παραβιάζει θεμελιωδώς τη διαφάνεια θέσης με τη ρητή ανταλλαγή μηνυμάτων μεταξύ των συμμετεχόντων διεργασιών. ΩστόσοΑκόμα, κάποιο ενδιάμεσο λογισμικό μπορεί να μην παρέχεται ως ξεχωριστή βιβλιοθήκη για την υποστήριξη πολλαπλών εφαρμογών, αλλά να είναι ενσωματωμένο σε μία μόνο κατανεμημένη δικτυακή εφαρμογή και βελτιστοποιημένο γι' αυτήν. Αυτό συμβαίνει π.χ. με τις περισσότερες ομότιμες εφαρμογές ανταλλαγής αρχείων μέσω Διαδικτύου.
 
Τα DOS παρουσιάζονται στους χρήστες ως συγκεντρωτικά και μονοεπεξεργαστικά. Ένα DOS σε πολυεπεξεργαστή έχει έναν μοναδικό πυρήνα κοινό για όλες τις CPU (όχι μονολιθικό στην πλειονότητα των περιπτώσεων, για λόγους ευελιξίας) ενώ, αντιθέτως, σ' ένα DOS σε πολυυπολογιστή κάθε κόμβος έχει τον δικό του πυρήνα (ο οποίος χρησιμοποιεί την τοπική μνήμη) αλλά παρέχεται κατάλληλη διασύνδεση που αποκρύπτει αυτό το γεγονός από τις εφαρμογές προσφέροντας μέχρι και την ψευδαίσθηση κοινής [[εικονική μνήμη|εικονικής μνήμης]]: ο χώρος εικονικών διευθύνσεων διαμερίζεται σε σελίδες και σε κάθε κόμβο ανατίθενται κάποιες ('''κατανεμημένη κοινή μνήμη λογισμικού'''). Αυτό μοιάζει με ό,τι συμβαίνει στα συστήματα NUMA, όπου ο χώρος διευθύνσεων είναι έτσι κι αλλιώς κοινός από τη σκοπιά του λειτουργικού συστήματος, μόνο που οι επιδόσεις ενός πολυυπολογιστή με κατανεμημένη κοινή μνήμη λογισμικού είναι σαφώς χαμηλότερες απ' ότι αν η ψευδαίσθηση του εναίου χώρου διευθύνσεων υλοποιούνταν στο υλικό, όπως στην αρχιτεκτονική NUMA.