1.2.1 ΤΟ ΜΟΝΤΕΛΟ ΠΕΛΑΤΗ-ΕΞΥΠΗΡΕΤΗΤΗ (CLIENT-SERVER MODEL)


Η αρχιτεκτονική του Χ Window System βασίζεται στο μοντέλο πελάτη-εξυπηρετητή (Client-Server model).Μία μοναδική διαδικασία, που ονομάζεται εξυπηρετητής (server), ελέγχει αποκλειστικά όλες τις μονάδες εισόδου και εξόδου. Ο εξυπηρετητής δημιουργεί και χειρίζεται τα παράθυρα επάνω στην οθόνη, παράγει το κείμενο και τα γραφικά, και ελέγχει τις μονάδες εισόδου όπως είναι το ποντίκι και το πληκτρολόγιο. Ο εξυπηρετητής παρέχει ένα φορητό (portable) υπόβαθρο ανάμεσα στις εφαρμογές και το hardware που αναλαμβάνει την απεικόνιση των αποτελεσμάτων σε μία οθόνη. Συνήθως τρέχει σε ένα workstation ή ένα προσωπικό υπολογιστή με δυνατότητα απεικόνισης γραφικών.

Μία εφαρμογή που κάνει χρήση των δυνατοτήτων που προσφέρονται από τον εξυπηρετητή των Χ Windows καλείται πελάτης (client). Ενας πελάτης επικοινωνεί με τον εξυπηρετητή μέσω μίας σύνδεσης του δικτύου χρησιμοποιώντας ένα ασύγχρονο bytestream πρωτόκολλο (asynchronous bytestream protocol). Το Χ Window System υποστηρίζει πολλά πρωτόκολλα για δίκτυα, ανάμεσα στα οποία ειναι τα TCP/IP, DECnet και Chaos. Είναι χαρακτηριστικό ότι πολλοί πελάτες μπορούν να συνδεθούν σε ένα μόνο εξυπηρετητή ταυτόχρονα, ενώ επίσης ένας μόνο πελάτης μπορεί να συνδεθεί σε πολλούς εξυπηρετητές.

Η αρχιτεκτονική των Χ Windows κρύβει με επιμέλεια τις περισσότερες από τις λεπτομέρειες που αναφέρονται στο μέρος της υλοποίησης του εξυπηρετητή που σχετίζεται με την εκάστοτε μηχανή. Αυτό έχει ως αποτέλεσμα ο κάθε πελάτης να μην έχει την ανάγκη να απευθυνθεί στο hardware για το επιτύχει αυτό που θέλει. Ο πελάτης αρκεί να επιτύχει την συνδεσή του με τον εξυπηρετητή και να αφήσει αυτόν πλέον να ανησυχεί για ότι έχει σχέση με το hardware.

Σε συνδυασμό με την παρεχόμενη ανεξαρτησία από το hardware, η κατανεμημένη αρχιτεκτονική του Χ Window System επιτρέπει στον εξυπηρετητή και στον πελάτη να τρέχουν σε ξεχωριστά μηχανήματα οπουδήποτε πάνω στο δίκτυο. Το γεγονός αυτό δίνει, για παράδειγμα, την δυνατότητα σε ένα υπολογιστή να απεικονίσει τα αποτελέσματα των υπολογισμών στην οθόνη ενός άλλου, διαφορετικού τύπου ή μάρκας, υπολογιστή απ' όπου στη συνέχεια μπορεί να ληφθούν για περαιτέρω επεξεργασία.

Με τον τρόπο αυτό επιτυγχάνονται οι δύο πολύ σημαντικές ιδιότητες-πλεονεκτήματα του Χ Window System. Η πρώτη από αυτές είναι η διαφάνεια που υπάρχει στο δίκτυο (Network Transparency) που σημαίνει ότι μία εφαρμογή τρέχει σε μία CPU και να παρουσιάζει την έξοδό της στην ίδια ή σε διαφορετική CPU. Ετσι εάν διαθέτουμε ένα τοπικό δίκτυο που αποτελείται από μία ποικιλία υπολογιστικών συστημάτων μπορούμε μέσω της κοινής πλατφόρμας των Χ Windows να απευθυνθούμε σε όποιο υπολογιστή θέλουμε από όποιον άλλο βρισκόμαστε αξιοποιώντας με τον καλύτερο τρόπο την υπολογιστική δύναμη ολοκλήρου του δικτύου. Η δεύτερη ιδιότητα είναι, όπως προέκυψε και από τα παραπάνω, η ανεξαρτησία του συστήματος από τον κατασκευαστή και το μοντέλο του υπολογιστή (Vendor and Model Independence). Οι εφαρμογές των Χ Windows είναι φορητές, τρέχουν στηριζόμενες στο υπόβαθρο που τους προσφέρει ο Χ Server χωρίς να επηρεάζονται από το hardware το οποίο μοιάζει μάλλον απόμακρο σε αυτές. Δηλαδή το επίτευγμα του Χ Window System είναι ότι έδωσε την δυνατότητα σε υπολογιστές με διαφορετική δομή και λειτουργικά συστήματα να επικοινωνήσουν και να λειτουργήσουν σε μία κοινή βαση.


[prev] [up] [next] [contents] [index]