ΗΜΥ 007 – Τεχνολογία Πληροφορίας Διάλεξη 5 ΗΜΥ 007 – Τεχνολογία Πληροφορίας Διάλεξη 5 Πρωτόκολλα Δεδομένων Τι είναι και γιατί χρησιμοποιούνται; 9 Φεβρουαρίου, 2004 Χρυσάνθη Πρέζα, D.Sc. Επισκέπτρια Επίκουρη Καθηγήτρια TΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ
Περίληψη Έννοιες: Πληροφορία Οργάνωση πληροφορίας Πρωτόκολλα αριθμητικής πληροφορίας Πρωτόκολλα αποθήκευσης δεδομένων Πρωτόκολλα μετάδοσης δεδομένων Πληροφορία
Υλικό Αναφοράς Cyganski, D., Orr, A. O., and Vaz, R. F., Information Technology Inside and Outside, Prentice Hall, 2001, σελίδες 53-69
Επανάληψη Αναπαράσταση αριθμητικής πληροφορίας Αναπαράσταση κειμένου Μετατροπή δεκαδικών αριθμών σε δυαδικούς και αντιστρόφως Ακέραιοι αριθμοί (θετικοί και προσημασμένοι) Πραγματικοί αριθμοί (κατά προσέγγιση, ακρίβεια και ορθότητα) Συμβολισμός δυαδικά κωδικοποιημένου δεκαδικού αριθμού Αναπαράσταση κειμένου Γράμματα και χαρακτήρες - Κώδικας ASCII Αναπαράσταση σημάτων Μετατροπή αναλογικής συνάρτησης σε ψηφιακή συνάρτηση Κωδικοποίηση ψηφιακών τιμών με δυαδικά ψηφία 27 128 2664 2532 1 24 16 238 224 212 201 32 + 8 + 2 = 42
Αριθμητικά Συστήματα Δυαδικό (binary) σύστημα Βάση το 2 Τιμές 0 και 1 Δεκαδικό (decimal) σύστημα Βάση το 10 Τιμές 0 – 9 Οκταδικό (octal) σύστημα Βάση το 8 Τιμές 0 – 7 Δεκαεξαδικό (hexadecimal ή HEX) σύστημα Βάση το 16 Τιμές 0 – F 6 καινούρια σύμβολα Α-F Το οκταδικό και δεκαεξαδικό χρησιμοποιούνται για εύκολη ανάγνωση του δυαδικού κώδικα π.χ για τον έλεγχο αποθηκευμένων δεδομένων και την λειτουργία συστημάτων
Ανίχνευσης και διόρθωσης σφαλμάτων Με ειδικούς κώδικες είναι εφικτό να γίνεται ανίχνευση και διόρθωση σφαλμάτων που συμβαίνουν στην μετάδοση δυαδικής πληροφορίας Βασική αρχή αυτών των κωδικών είναι ο πλεονασμός ψηφίων (bit redundancy) δηλ. προσθέτονται επιπλέον δυαδικά ψηφία για σκοπούς ανίχνευσης και διόρθωσης σφαλμάτων π.χ. η προσθήκη του «ψηφίου ισοτιμίας» (parity bit) στον κώδικα ASCII
ASCII με Δυαδικό Ψηφίο Ισοτιμίας Ζυγή (Περιττή) ισοτιμία: τοποθετείτε το ψηφίο ισοτιμίας έτσι ώστε ο συνολικός αριθμός των ψηφίων που έχουν την τιμή 1 μέσα στον οκταψήφιο κώδικα να είναι ζυγός (περιττός) Παράδειγμα: Κάνε τον επταψήφιο κώδικα 1011011 σε οκταψήφιο κώδικα με ζυγή ισοτιμία 11011011 Κάνε τον επταψήφιο κώδικα 1011011 σε οκταψήφιο κώδικα με περιττή ισοτιμία 01011011 Και στις δύο περιπτώσεις ο αριθμός των σφαλμάτων που μπορεί να ανιχνευθεί είναι περιττός!
Βολικές μορφές δυαδικού κώδικα bit είναι ένα δυαδικό ψηφίο (0 ή 1). byte είναι 8 bits Το μικρότερο σύνολο δυαδικών ψηφίων που χρησιμοποιείται από τους Η/Υ για την αποθήκευση και επεξεργασία πληροφορίας word είναι ένα ή περισσότερα bytes (ο αριθμός των bytes είναι δύναμη του 2) παράδειγμα 1, 2, 4, ή 8 bytes = 8, 16, 32, 64 bits αντιστοίχως Μονάδα μέτρησης της μνήμη Η/Υ είναι το byte 1 kilobyte (1 Κbyte ή 1 KB) = 210 = 1024 bytes 1 megabyte (1 Mbyte ή 1 MB) = 220 = 1024 x 1024 = 1.048.576 bytes Το νόημα της αποθηκευμένης πληροφορίας εξαρτάται από το «πλαίσιο» (context) στο οποίο βρίσκεται.
Τι μπορεί να αναπαραστήσει 1 byte; 256 (=28) πιθανότητες ή καταστάσεις 256 ακέραιους αριθμούς 0...255 128 προσημασμένους ακεραίους -128...0…+127 128 χαρακτήρες με ένα bit ελέγχου (π.χ κώδικας ASCII) Εντολές Η/Υ Το ακόλουθο byte 01001001 θα μπορούσε να σημαίνει: τον χαρακτήρα ’I’ (κώδικας ASCII) τον αριθμό 73 (δυαδική αναπαράσταση) τον αριθμό 3 (έχει τρία ‘1’) => Χρειαζόμαστε επιπλέον πληροφορίες για να μπορούμε να πούμε τι παριστάνει αυτό το byte
Τι είναι τα πρωτόκολλα; Πρωτόκολλα = σύνολο κανόνων που παρέχουν τάξη σε διάφορα συστήματα και καταστάσεις, π.χ. Στρατιωτικά πρωτόκολλα για διάφορες καταστάσεις έκτακτης ανάγκης και για θέματα ασφάλειας Ιατρικά πρωτόκολλα για την φαρμακευτική αγωγή και θεραπεία ασθενειών Πρωτόκολλα δεδομένων παρέχουν τάξη στα συστήματα πληροφορίας και αποτελεσματική ανταλλαγή πληροφορίας, π.χ. Πρωτόκολλα οργάνωσης και αποθήκευσης πληροφορίας Πρωτόκολλα μετάδοσης πληροφορίας
Οργάνωση πληροφορίας Οργάνωση υλικού σε ένα βιβλίο Αρχή και τέλος - τίτλος, εισαγωγή, επίλογος Λέξεις, παράγραφοι, κεφάλαια, περιεχόμενα Αλφαβητική οργάνωση βιβλίων σε βιβλιοπωλεία Βιβλία σε ράφια σε αλφαβητική σειρά ονόματος του συγγραφέα Οργάνωση βιβλίων σε βιβλιοθήκες με ειδικές διευθύνσεις (Dewey decimal system) Οργάνωση βιβλίων με το ISBN (International Standard Book Number) => Μπορούμε να χρησιμοποιήσουμε διαφορετικά πρωτόκολλα για την οργάνωση της ίδιας πληροφορίας
Χρησιμότητα Πρωτοκόλλων Τα πρωτόκολλα είναι αναγνωρισμένοι κανόνες οργάνωσης για την επικοινωνία πληροφορίας Με την βοήθεια των πρωτοκόλλων είναι δυνατόν να προσδιορισθεί Το μορφότυπο των δεδομένων Η ανίχνευση σφάλματος Ο συγχρονισμός των δεδομένων Που αρχίζω;
Πρωτόκολλα αριθμητικής πληροφορίας Οι Η/Υ εκτελούν διάφορες πράξεις με ένα σύνολο δυαδικών ψηφίων Οι πρώτοι Η/Υ (μικροεπεξεργαστές) χρησιμοποιούσαν το Nibble = 4 bits Οι πρώτοι προσωπικοί Η/Υ (PCs) χρησιμοποιούσαν το Byte = 8 bits Αργότερα το μήκος τις δυαδικής λέξεις (word length) έγινε 16 bits και μετά 32 bits Σήμερα υπάρχουν Υ/Η που χρησιμοποιούν 64 bits δηλ. 8 bytes μαζί
Πρωτόκολλα αριθμητικής πληροφορίας Παράδειγμα: θετικοί ακέραιοι αριθμοί με 16 bits Ποιο αριθμό παριστάνουν τα 2 bytes 00000001 10000000 ; Εξαρτάται από το πρωτόκολλο που χρησιμοποιεί ο Η/Υ Με το πρωτόκολλο ‘big endian’ έχουμε 0000000110000000 = 28 + 27 = 256 + 128 = 384 Με το πρωτόκολλο ‘little endian’ έχουμε 1000000000000001 = 215 + 20 = 32768 + 1 = 32769 Για αρνητικούς ακέραιους αριθμούς υπάρχουν διάφορα πρωτόκολλα Ο ποιο απλός τρόπος (αλλά δεν χρησιμοποιείται συνήθως) είναι η αναπαράσταση του πρόσημου από το πρώτο ψηφίο στα αριστερά 0 για αρνητικό 1 για θετικό
Πρωτόκολλα αποθήκευσης δεδομένων Υπάρχουν διάφορα πρωτόκολλα που καθορίζουν πως αποθηκεύονται οι πληροφορίες πως γίνεται η ανάληψη (προσπέλαση) πληροφοριών από το μέσο αποθήκευσης Το πρωτόκολλο εξαρτάται από τα χαρακτηριστικά του μέσου αποθήκευσης Μνήμη τυχαίας προσπέλασης (Random Access Memory = RAM) Μαγνητική ταινία (magnetic tape) Περιστρεφόμενοι δίσκοι Δισκέτα ή μαλακός δίσκος (floppy disk) Σκληρός δίσκος (hard disk) Οπτικός δίσκος (CD ROM)
Μνήμη τυχαίας προσπέλασης (Random Access Memory = RAM) Μία μνήμη στην οποία μπορούμε να γράψουμε ή να διαβάσουμε πληροφορίες επανειλημμένα Αποτελεί το κύριο τμήμα της μνήμης Η/Υ Μία γραμμική σειρά από bytes αριθμημένα από το 0 μέχρι το τελευταίο byte στην σειρά Οι αριθμοί αποτελούν τις διευθύνσεις των δεδομένων και χρησιμοποιούνται από τον Η/Υ να βρει και να πάρει τα δεδομένα Γρήγορη προσπέλαση αν η διεύθυνση είναι γνωστή Όλες οι λέξεις είναι το ίδιο προσπελάσιμες Άμεση πρόσβαση δεδομένων Οι περισσότερες RAMs είναι διατάξεις από ημιαγωγό υλικό (semiconducting material)
Μαγνητική Ταινία Μέσον αποθήκευσης δεδομένων σε μορφή κασέτας ή καρουλιού Τα δεδομένα γράφονται σε γραμμική σειρά όπως στην RAM Ακολουθιακή προσπέλαση (sequential access) Ο αναγνώστης της μαγνητικής ταινίας προσδιορίζει αν πρέπει να προχωρήσει μπροστά ή πίσω συγκρίνοντας την θέση στην οποία βρίσκεται με την επιθυμητή θέση => χρονοβόρα διαδικασία => Η άμεση πρόσβαση δεδομένων δεν είναι εφικτή Για διευκόλυνση της αναζήτησης, τα δεδομένα είναι χωρισμένα σε τμήματα που λέγονται μπλοκs δεδομένων (blocks) Κάθε μπλοκ περιέχει εκατοντάδες ή χιλιάδες bytes Κάθε μπλοκ έχει ένα διακριτό δυαδικό κώδικα Η αναζήτηση έχει δύο μέρη: αναζήτηση του επιθυμητού μπλοκ, αναζήτηση των δεδομένων
Περιστρεφόμενοι δίσκοι Μαγνητικά μέσα Δισκέτα ή μαλακός δίσκος (floppy disk) Σκληρός δίσκος (hard disk) Ο δίσκος είναι χωρισμένος σε τροχιές ή κανάλια εγγραφής (tracks). Κάθε τροχιά χωρίζετε σε τομείς (sectors) O γνωστός δίσκος των 3 ½ ιντσών με χωρητικότητα των 1.44 Μbytes έχει 80 τροχιές σε κάθε πλευρά => σύνολο 160 τροχιές. Κάθε τροχιά έχει 18 τομείς και κάθε τομέας έχει 512 bytes => 160 x 18 x 512 = 1.474.560 bytes Η κεφαλή ανάγνωσης τοποθετείται πάνω σε μία τροχιά και καθώς ο δίσκος γυρίζει οι πληροφορίες διαβάζονται Ο δίσκος περιέχει επιπλέον πληροφορίες για την οργάνωση των δεδομένων που είναι γνωστές εκ των προτέρων κατάλογο δεδομένων με τα ονόματα και μεγέθη όλων των αρχείων πίνακα αναζήτησης αρχείων που περιέχει την ακριβή τοποθεσία των δεδομένων για κάθε αρχείο => οι δίσκοι δεν μπορούν να μεταφερθούν από σύστημα Η/Υ σε άλλο
Σκληρός δίσκος Χρησιμοποιείται ευρύτατα για την αποθήκευση δεδομένων και προγραμμάτων Μεγάλης χωρητικότητας Αποτελείται από μεταλλικές πλάκες καλυμμένες με υλικό που επιτρέπει να αποθηκεύονται δεδομένα σε μορφή μαγνητισμένων σημείων Κεφαλές ανάγνωσης και γραφής κινούνται πάνω από τις επιφάνειες των πλακών Χρειάζεται έναν διεπαφή ελεγκτή (interface controller) για να λειτουργήσει και ο υπολογιστής επικοινωνεί με τον controller με κάποια διεπαφή π.χ. IDE, SCSI IDE = Integrated Drive Electronics SCSI = Small Computer System Interface
Οπτικός δίσκος CD-ROM CD-ROM (= Μνήμη σύμπυκνου δίσκου μόνο ανάγνωσης) Ακολουθιακή προσπέλαση βασιζόμενη σε οπτική αλληλεπίδραση Τα δεδομένα σώζονται σε ένα σπιράλ από τα μέσα προς τα έξω Μοιάζει με τον μαγνητικό δίσκο αλλά η αποθήκευση και οργάνωση πληροφορίας μοιάζει με εκείνη της μαγνητικής ταινίας Χρησιμοποιεί κατάλογο δεδομένων και πίνακα αναζήτησης αρχείων Δεν είναι απαραίτητο να διαβαστούν όλα τα προηγούμενα δεδομένα Η αναζήτηση γίνεται πιο γρήγορα σε σύγκριση με την αναζήτηση σε μαγνητική ταινία
Πρωτόκολλα μετάδοσης δεδομένων Πολλές προϋπόθεσης λαμβάνονται υπόψη για την ανάπτυξη ενός τέτοιου πρωτοκόλλου Απλό Παράδειγμα για να δούμε τις βασικές αρχές: ένα μήνυμα στέλλεται από την μνήμη του Η/Υ στον εκτυπωτή (printer) μέσω καλωδίων Το μήνυμα κωδικοποιείται σε δυαδικά ψηφία χρησιμοποιώντας τον Κώδικα ASCII και μεταδίδεται Η αποκωδικοποίηση του μηνύματος από τον δέκτη είναι εύκολη αν: όλα τα στοιχεία φθάσουν στον δέκτη σωστά ο δέκτης γνωρίζει την αρχή της στοιχειοσειράς ο δέκτης γνωρίζει ότι τα ψηφία παριστάνουν κώδικα ASCII Μήνυμα: “You”
Πρωτόκολλα μετάδοσης δεδομένων Έλεγχος ζεύξης δεδομένων υψηλής στάθμης (HDLC – High Level Data Link Control) Πρωτόκολλο προσανατολισμένο στα δυαδικά ψηφία (bit oriented protocol) Διεθνές πρότυπο καθορισμένο από το ISO (International Standards Organization) Τα δεδομένα χωρίζονται σε Frames Frame = πλαίσιο: μια ομάδα διαδοχικών δυαδικών ψηφίων τα οποία μεταδίδονται σαν ένα σύνολο Για την αναγνώριση της αρχής του Frame από τον δέκτη, χρησιμοποιείται μοναδικός κωδικός που σημαίνει «αρχή μηνύματος» (start-of-message or frame) Byte δείκτης (Flag byte) = 01111110 Ο δέκτης εξετάζει κάθε ψηφίο και μόλις αναγνωρίσει τον δείκτη ξέρει ότι αρχίζει το Frame Ποια είναι τα προβλήματα με αυτή την μέθοδο;
Πρωτόκολλο HDLC Προβλήματα αν ο κωδικός του Byte δείκτη εμφανιστεί σε ένα άλλο μέρος του μηνύματος αν τα τύχει σφάλμα στην μετάδοση ψηφίων Λύσεις Χρησιμοποιείται η μέθοδος του ψηφίου παραγεμίσματος (bit stuffing) αν πέντε συνεχόμενα ψηφία είναι ‘1’ τότε προστίθεται ένα ψηφίο ‘0’ => έτσι ποτέ δεν υπάρχουν έξι συνεχόμενα ψηφία ‘1’ όπως στο flag byte Ο δέκτης γνωρίζοντας το πρωτόκολλο αφαιρεί το ‘0’ που ακολουθεί πέντε ψηφία ‘1’ Για την αναγνώριση και διόρθωση σφαλμάτων χρησιμοποιούνται άλλα πρωτόκολλα που προσθέτουν επιπλέον ψηφία πλεονασμός ψηφίων (bit redundancy)
Στην συνέχεια … Αναπαράσταση Οπτικής πληροφορίας: απεικόνιση πληροφορίας κωδικοποίηση εικόνας και βίντεο Στοιχείο εικόνας και ευκρίνεια …