270 likes | 391 Views
ΗΜΥ 007 – Τεχνολογία Πληροφορίας Διάλεξη 5. Πρωτόκολλα Δεδομένων Τι είναι και γιατί χρησιμοποιούνται;. T ΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ. Περίληψη. Έννοιες: Οργάνωση πληροφορίας Πρωτόκολλα αριθμητικής πληροφορίας
E N D
ΗΜΥ 007 – Τεχνολογία ΠληροφορίαςΔιάλεξη 5 Πρωτόκολλα Δεδομένων Τι είναι και γιατί χρησιμοποιούνται; TΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ
Περίληψη Έννοιες: • Οργάνωση πληροφορίας • Πρωτόκολλα αριθμητικής πληροφορίας • Πρωτόκολλα αποθήκευσης δεδομένων • Πρωτόκολλα μετάδοσης δεδομένων Πληροφορία
Υλικό Αναφοράς • Cyganski, D., Orr, A. O., and Vaz, R. F., Information Technology Inside and Outside, Prentice Hall, 2001, σελίδες 53-72
Επανάληψη • Αναπαράσταση αριθμητικής πληροφορίας • Μετατροπή δεκαδικών αριθμών σε δυαδικούς και αντιστρόφως • Ακέραιοι αριθμοί (θετικοί και προσημασμένοι) • Πραγματικοί αριθμοί (κατά προσέγγιση, ακρίβεια και ορθότητα) • Συμβολισμός δυαδικά κωδικοποιημένου δεκαδικού αριθμού • Αναπαράσταση κειμένου • Γράμματα και χαρακτήρες - Κώδικας ASCII • Αναπαράσταση σημάτων • Μετατροπή αναλογικής συνάρτησης σε ψηφιακή συνάρτηση • Κωδικοποίηση ψηφιακών τιμών με δυαδικά ψηφία 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 με Δυαδικό Ψηφίο Ισοτιμίας • Ένα 8ο ψηφίο στον κώδικα 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 • 1 gigabyte (1 GB) = 230 = 1024 x 1024 x 1024 = 1.073.741.824 bytes Το νόημα της αποθηκευμένης πληροφορίας εξαρτάται από το «πλαίσιο» (context) στο οποίο βρίσκεται.
Τι μπορεί να αναπαραστήσει 1 byte; • 256 (=28) πιθανότητες ή καταστάσεις • 256 ακέραιους αριθμούς 0...255 • 128 προσημασμένους ακεραίους -128...0…+127 • 128 χαρακτήρες με ένα bit ελέγχου (π.χκώδικαςASCII) • Εντολές Η/Υ • Το ακόλουθο byte 01001001 θα μπορούσε να σημαίνει: • τον χαρακτήρα ’I’ (κώδικας ASCII) • τον αριθμό 73 (δυαδική αναπαράσταση) • τον αριθμό 3 (έχει τρία ‘1’) • τον αριθμό 49 (κώδικας BCD) => Χρειαζόμαστε επιπλέον πληροφορίες για να μπορούμε να πούμε τι παριστάνει αυτό το 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) • Μνήμη Φλας (Flash Memory) • Μαγνητική ταινία(magnetic tape) • Περιστρεφόμενοι δίσκοι • Δισκέτα ή μαλακός δίσκος (floppy disk) • Σκληρός δίσκος (hard disk) • Οπτικός δίσκος (CD-ROM)
Μνήμη τυχαίας προσπέλασης (Random Access Memory = RAM) • Μία μνήμη στην οποία μπορούμε να γράψουμε ή να διαβάσουμε πληροφορίες επανειλημμένα • Αποτελεί το κύριο τμήμα της μνήμης Η/Υ • Μία γραμμική σειρά από bytes αριθμημένα από το 0 μέχρι το τελευταίο byte στην σειρά • Οι αριθμοί αποτελούν τις διευθύνσεις των δεδομένων και χρησιμοποιούνται από τον Η/Υ να βρει και να πάρει τα δεδομένα • Γρήγορη προσπέλαση αν η διεύθυνση είναι γνωστή • Όλες οι λέξεις είναι το ίδιο προσπελάσιμες • Άμεση πρόσβαση δεδομένων • Οι περισσότερες RAMs είναι διατάξεις από ημιαγωγό υλικό (semiconducting material) RAM
Flash Memory • Παρόμοια με τη RAM, όμως μπορεί να διατηρήσει πληροφορίες ακόμα κι’ όταν δεν τροφοδοτείτε με ηλεκτρική ενέργεια. • Είναι πιο αργή από τη RAM και δεν προσφέρεται για άμεση, τυχαία προσπέλαση, όπως τη RAM.H γραφή, διαγραφή καιπροσπέλαση γίνονται σε μπλοκς (όπως οι σκληροί δίσκοι). • Είναι πιο φτηνή και χρησιμοποιείται σε USB drives, αλλά και ως μνήμη για ψηφιακές κάμερες.
Μαγνητική Ταινία • Μέσον αποθήκευσης δεδομένων σε μορφή κασέτας ή καρουλιού • Τα δεδομένα γράφονται σε γραμμική σειρά όπως στην 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 • Η κεφαλή ανάγνωσης τοποθετείται πάνω σε μία τροχιά και καθώς ο δίσκος γυρίζει οι πληροφορίες διαβάζονται • Ο δίσκος περιέχει επιπλέον πληροφορίες για την οργάνωση των δεδομένων που είναι γνωστές εκ των προτέρων • κατάλογο δεδομένων με τα ονόματα και μεγέθη όλων των αρχείων • πίνακα αναζήτησης αρχείων που περιέχει την ακριβή τοποθεσία των δεδομένων για κάθε αρχείο • => οι δίσκοι δεν μπορούν να μεταφερθούν από ένα σύστημα Η/Υ σε άλλο (π.χ. από το PC στο Apple Mac) 3 ½ ιντσών 5¼ ιντσών
Σκληρός δίσκος • Χρησιμοποιείται ευρύτατα για την αποθήκευση δεδομένων και προγραμμάτων • Μεγάλης χωρητικότητας • Αποτελείται από μεταλλικές πλάκες καλυμμένες με υλικό που επιτρέπει να αποθηκεύονται δεδομένα σε μορφή μαγνητισμένων σημείων • Κεφαλές ανάγνωσης και γραφής κινούνται πάνω από τις επιφάνειες των πλακών • Χρειάζεται έναν διεπαφή ελεγκτή (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)
Επεξεργασία Κειμένου και Πρωτόκολλα Διαδικτύου • Στέλνοντας μόνο ASCII δεν επιτρέπει επιλογή τύπου γραμμάτων, μέγεθος, κτλ. • Θα μπορούσαμε να κωδικοποιήσουμε όλες τις πιθανές επιλογές γραμμάτων με ψηφιακό κώδικα, αλλά θα ήταν πολύ μειονεκτικό. • Εναλλακτική λύση είναι να χρησιμοποιήσουμε κάτι σαν γλώσσα προγραμματισμού, όπως η HTML ή LaTeX. Π.χ. το “boldface” κείμενο:A short text file. HTML: <HTML> <BODY> <b>A short text file.</b> </BODY> </HTML> LaTeX: \documentstyle{article} \begin{document} {\bf A short text file.} \end{document} • Άλλες γλώσσες περιγραφή κειμένου είναι η PostScript (για εκτύπωση κειμένων), και η RTF (rich-text-format) η οποία είναι χρήσιμη ως «γέφυρα» μεταξύ επεξεργαστών κειμένου οι οποίοι είναι ασύμβατοι μεταξύ τους.
Στην συνέχεια… • Αναπαράσταση Οπτικής πληροφορίας: • απεικόνιση πληροφορίας • κωδικοποίησηεικόνας και βίντεο • Στοιχείο εικόνας και ευκρίνεια…