Εισαγωγή στους Υπολογιστές

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Εισαγωγή στους Υπολογιστές"

Transcript

1 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές (θεμελιώδεις αρχές λειτουργίας των υπολογιστών) Μ.Στεφανιδάκης

2 Σχετικά με το μάθημα Εισαγωγή Ενότητες μαθήματος Αρχές λειτουργίας υπολογιστών Υλικό (hardware) Αρχιτεκτονική Η/Υ Αλγόριθμοι Χειρισμός δεδομένων Δομές δεδομένων Λογισμικό (software) Εφαρμογές Το βιβλίο του μαθήματος Behrouz A. Forouzan, Εισαγωγή στην Επιστήμη των Υπολογιστών, ΚΛΕΙΔΑΡΙΘΜΟΣ, Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 2

3 Ο Υπολογιστής Η γενική εικόνα Εισαγωγή πρόγραμμα ελέγχου ; δεδομένα εισόδου Υπολογιστικό σύστημα δεδομένα εξόδου Από πού προέρχονται τα δεδομένα εισόδου; Πού αποθηκεύονται τα δεδομένα εξόδου; Μετασχηματισμός δεδομένων εισόδου σε δεδομένα εξόδου, βάσει ενός προγράμματος ελέγχου Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 3

4 Η μνήμη Εισαγωγή ; Και το πρόγραμμα ελέγχου; Πώς αναπαρίσταται; Πού βρίσκεται αποθηκευμένο; Τα δεδομένα εισόδου και εξόδου αποθηκεύονται στη μνήμη πρόγραμμα ελέγχου επεξεργασία δεδομένων υπολογιστικό σύστημα δεδομένα εισόδου δεδομένα εξόδου Μνήμη αποθήκευση δεδομένων Μπορούν να χρησιμοποιηθούν στην επόμενη φάση επεξεργασίας Στην πραγματικότητα το σύστημα μνήμης είναι πολυπλοκότερο! Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 4

5 Το μοντέλο von Neumann Εισαγωγή ; Πώς κατασκευάζεται ένα πρόγραμμα ελέγχου; Ποιος δημιουργεί τις εντολές; Υπολογιστής αποθηκευμένου προγράμματος κεντρική μονάδα επεξεργασίας μονάδα ελέγχου επεξεργασία δεδομένων υπολογιστικό σύστημα πρόγραμμα ελέγχου δεδομένα εισόδου δεδομένα εξόδου Μνήμη Το πρόγραμμα ελέγχου (εντολές) αποθηκεύεται μαζί με τα δεδομένα στη μνήμη Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 5

6 Το πρόγραμμα ελέγχου Εισαγωγή Σύνολο εντολών (οδηγιών) Περιγράφει το είδος της επεξεργασίας των δεδομένων Τα δεδομένα εξόδου εξαρτώνται από τα δεδομένα εισόδου και το πρόγραμμα (λογισμικό) Γλώσσες προγραμματισμού Κάθε εντολή χειρίζεται κάποια δεδομένα Οι εντολές εκτελούνται σειριακά Η μια μετά την άλλη Εξαίρεση: εντολές διακλάδωσης Εάν μια συνθήκη αληθής, τότε μεταφορά εκτέλεσης σε διαφορετικό σημείο προγράμματος Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 6

7 Εκτέλεση ακολουθίας λειτουργιών Εισαγωγή υπολογιστικό σύστημα ρολόι (clock) μονάδα ελέγχου πρόγραμμα ελέγχου! Το σχήμα συμπληρώνεται με τις μονάδες εισόδου-εξόδου, για επικοινωνία με τον έξω κόσμο Χρονισμός μέσω ενός σήματος ρολογιού επεξεργασία δεδομένων δεδομένα εισόδου δεδομένα εξόδου Μνήμη Ο παλμός του υπολογιστικού συστήματος Έναρξη επόμενης λειτουργίας Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 7

8 Υπολογιστικά συστήματα(;) Εισαγωγή Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 8

9 Πριν τους σύγχρονους υπολογιστές Εισαγωγή Μηχανικά Συστήματα Εκτέλεση αριθμητικών πράξεων Για το εμπόριο, τη στατιστική... Την επιστήμη και τις εφαρμογές μηχανικού... Η κατασκευή τους απαιτούσε ακρίβεια μη διαθέσιμη τεχνολογικά πολλές φορές! Η μηχανή του Jacquard (1804) Αυτόματος αργαλειός που προγραμματιζόταν για την ύφανση πολύπλοκων σχεδίων μέσω διάτρητων χαρτοταινιών ή καρτελών Η γέννηση του προγράμματος ελέγχου; Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 9

10 Οι πρώτοι υπολογιστές Εισαγωγή Κατά και μετά τον 2ο παγκόσμιο πόλεμο Εκτέλεση αριθμητικών πράξεων Για στρατιωτικές εφαρμογές... Υπολογισμός τροχιών πυροβολικού Αποκρυπτογράφηση μηνυμάτων Επιστημονικές πληροφορίες για τα συστήματα αυτά δημοσιεύτηκαν πολύ αργότερα! Η εξέλιξη της τεχνολογίας Αρχικά: ηλεκτρομηχανικά μέρη (ρελέ) Στη συνέχεια: λυχνίες κενού ως διακόπτες (ON-OFF) Η απαρχή της ηλεκτρονικής εποχής των υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 10

11 Εισαγωγή The Electronic Numerical Integrator and Computer (ENIAC) 1946 Κατασκευάστηκε για στρατιωτικούς σκοπούς στις ΗΠΑ Είχε 33 m μήκος και 2,5 m ύψος σε χώρο 270 m 2 Χρησιμοποιούσε λυχνίες, ηλεκτρικές αντιστάσεις, κολλήσεις και το κόστος του υπερέβαινε τα $ Κατανάλωνε Watts και ελεγχόταν με διακόπτες με το χέρι (δεν υπήρχε πρόγραμμα σε μορφή αποθηκευμένων εντολών) Παλμός συστήματος ανά 1/5000 sec Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 11

12 Γενιές υπολογιστών Εισαγωγή 1η γενιά ( ) Λυχνίες ως διακόπτες Μόνο σε μεγάλους οργανισμούς 2η γενιά ( ) Τρανζίστορ ως διακόπτες Προσιτοί σε μικρομεσαίες επιχειρήσεις 3η γενιά ( ) Ολοκληρωμένα κυκλώματα Εμπορικά πακέτα λογισμικού 4η γενιά ( ) Μικροϋπολογιστές, δίκτυα.. 5η γενιά (1985-) Φορητοί υπολογιστές, πολυμέσα, CDROM/DVD Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 12

13 Η τρέχουσα τεχνολογία των υπολογιστών Εισαγωγή Τεχνολογία Ηλεκτρονική Τα στοιχεία που συγκροτούν τους υπολογιστές λειτουργούν με στάθμες τάσης ή φορά ρεύματος Υλοποίηση με ημιαγωγούς Ψηφιακή Οι επιτρεπόμενες τιμές πρέπει να ανήκουν σε διακριτές στάθμες Δυαδική Τα στοιχεία που συγκροτούν τους υπολογιστές υλοποιούν διακοπτικές λειτουργίες Δύο στάθμες, ON ή OFF, 0 ή 1 Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 13

14 Γιατί ψηφιακή τεχνολογία; Εισαγωγή Τεχνολογία Ηλεκτρονικός Θόρυβος ; ψηφιακό στοιχείο ψηφιακό στοιχείο Τι θα συνέβαινε μεταξύ δύο αναλογικών τμημάτων (με συνεχές πεδίο τιμών); Δυνατότητα αναγέννησης του αρχικού σήματος Όσο η παραμόρφωση δεν υπερβαίνει κάποια όρια Όσο λιγότερες στάθμες επιτρέπονται, τόσο τα επιτρεπτά όρια διακύμανσης είναι μεγαλύτερα Πλεονέκτημα της δυαδικής τεχνολογίας Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 14

15 Γιατί δυαδική τεχνολογία; Εισαγωγή Τεχνολογία πηγή (source) πύλη (gate) n+ n+ καταβόθρα (drain) p- i Το τρανζίστορ αυτό είναι τύπου NMOS. Υπάρχει και το συμπληρωματικό PMOS. Το τρανζίστορ MOSFET υπόστρωμα (body) κανάλι (channel) Ο μικροσκοπικός διακόπτης των σύγχρονων κυκλωμάτων Η θεωρία λειτουργίας του είναι γνωστή από το αλλά τα πρώτα λειτουργικά κυκλώματα κατασκευάστηκαν τη δεκαετία του 60 Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 15

16 Η συρρίκνωση του τρανζίστορ Εισαγωγή Τεχνολογία i Ολοκληρωμένο κύκλωμα: όλα τα στοιχεία συνδυάζονται στο ίδιο υπόστρωμα πυριτίου. Νόμος του Moore: ο αριθμός των τρανζίστορ ανά ολοκληρωμένο κύκλωμα διπλασιάζεται κάθε 1,5-2 χρόνια Ένας σύγχρονος επεξεργαστής μπορεί να περιέχει πάνω από 1 δις τρανζίστορ σε μία επιφάνεια 250mm 2 Πλεονεκτήματα Ταχύτερη λειτουργία Πιο γρήγοροι χρόνοι ON-OFF Μικρότερη κατανάλωση ενέργειας Για τον ίδιο αριθμό τρανζίστορ! Μεγαλύτερη ολοκλήρωση Μείωση κόστους παραγωγής και αύξηση λειτουργικότητας Τρέχουσα εμπορική τεχνολογία: Μέγεθος (καναλιού) τρανζίστορ = 65nm Το μέλλον; 45 και 25 nm Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 16

17 Ψηφιακά Ηλεκτρονικά και Δυαδική Λογική Εισαγωγή Τεχνολογία Δυαδική λογική Η δυαδική λογική ταιριάζει με την τεχνολογία του τρανζίστορ 2 καταστάσεις: ON-OFF, 1-0 Ψηφιακά ηλεκτρονικά (2 στάθμες) Δυαδική άλγεβρα Boole Λογική άλγεβρα Συσχέτιση με διακοπτικά κυκλώματα Η εργασία του Shannon (1938) C.E.Shannon Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 17

18 Ποσότητες Δυαδικής Λογικής Εισαγωγή Τεχνολογία Δυαδική λογική Στη δυαδική λογική άλγεβρα Υπάρχουν 2 ποσότητες (σύμβολα): Αληθές ή 1 ή ΝΑΙ Ψευδές ή 0 ή ΟΧΙ Ένα δυαδικό ψηφίο (bit) έχει τιμή 0 ή 1 Στα ψηφιακά ηλεκτρονικά κυκλώματα: 0 ή χαμηλή τάση ή η μια φορά ρεύματος 1 ή υψηλή τάση ή η άλλη φορά ρεύματος Ανάλογα με την τεχνολογία, ένα bit αναπαρίσταται με αντίστοιχη κατάσταση ενός σημείου σε ένα ηλεκτρονικό κύκλωμα Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 18

19 Πράξεις Δυαδικής Λογικής Εισαγωγή Τεχνολογία Δυαδική λογική Στη δυαδική λογική άλγεβρα Καθορίζονται λογικές πράξεις μεταξύ λογικών ποσοτήτων (bits) Στα ψηφιακά ηλεκτρονικά κυκλώματα: Το αντίστοιχο κύκλωμα δέχεται ως είσοδο την αναπαράσταση των λογικών ποσοτήτων και παράγει στην έξοδό του την αναπαράσταση του αποτελέσματος της συγκεκριμένης λογικής πράξης Το κύκλωμα υλοποίησης μιας λογικής πράξης ονομάζεται πύλη (gate). Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 19

20 Βασικές Πράξεις Εισαγωγή Τεχνολογία Δυαδική λογική Αντιστροφή (NOT) Αντιστροφή των bits Πίνακας Αλήθειας A Y Σύμβολο πύλης NOT Α Υ (Α ή Α) Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 20

21 Βασικές Πράξεις Εισαγωγή Τεχνολογία Δυαδική λογική Λογικό ΚΑΙ (AND) αποτέλεσμα 1, μόνο όταν και το Χ και το Υ είναι 1 0 AND X = X AND 0 = 0 1 AND X = X AND 1 = X Πίνακας Αλήθειας X Y AND Σύμβολο πύλης AND X X AND Y Y Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 21

22 Βασικές Πράξεις Εισαγωγή Τεχνολογία Δυαδική λογική Λογικό Ή (OR) αποτέλεσμα 1, όταν Χ ή Υ ή και τα δύο είναι 1 1 OR X = X OR 1 = 1 0 OR X = X OR 0 = X Πίνακας Αλήθειας X Y OR Σύμβολο πύλης OR X X OR Y Y Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 22

23 Βασικές Πράξεις Εισαγωγή Τεχνολογία Δυαδική λογική Αποκλειστικό Ή (XOR) αποτέλεσμα 1, όταν μόνο το Χ ή μόνο το Υ είναι 1 1 XOR X = X XOR 1 = NOT X 0 XOR X = X XOR 0 = X Πίνακας Αλήθειας X Y XOR Σύμβολο πύλης XOR X X XOR Y Y Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 23

24 Στο επόμενο μάθημα... Εισαγωγή Τεχνολογία Δυαδική λογική Στο επόμενο... Περισσότερα για την τεχνολογία των υπολογιστών Φυσική Ημιαγωγών Το τρανζίστορ και η λειτουργία του Πώς κατασκευάζονται τα ολοκληρωμένα κυκλώματα των υπολογιστών; Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στους Υπολογιστές 24

25 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών (Κατασκευή και Λειτουργία Ψηφιακών Κυκλωμάτων) Μ.Στεφανιδάκης

26 Η τρέχουσα τεχνολογία των υπολογιστών Τεχνολογία Ηλεκτρονική Τα στοιχεία που συγκροτούν τους υπολογιστές λειτουργούν με στάθμες τάσης ή φορά ρεύματος Υλοποίηση με ημιαγωγούς (semiconductors) Ψηφιακή Οι επιτρεπόμενες τιμές πρέπει να ανήκουν σε διακριτές στάθμες Δυαδική Τα στοιχεία που συγκροτούν τους υπολογιστές υλοποιούν διακοπτικές λειτουργίες Δύο στάθμες, ON ή OFF, 0 ή 1 Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 2

27 Γιατί ψηφιακή τεχνολογία; Τεχνολογία Ηλεκτρονικός Θόρυβος ; ψηφιακό στοιχείο ψηφιακό στοιχείο Τι θα συνέβαινε μεταξύ δύο αναλογικών τμημάτων (με συνεχές πεδίο τιμών); Δυνατότητα αναγέννησης του αρχικού σήματος Όσο η παραμόρφωση δεν υπερβαίνει κάποια όρια Όσο λιγότερες στάθμες επιτρέπονται, τόσο τα επιτρεπτά όρια διακύμανσης είναι μεγαλύτερα Πλεονέκτημα της δυαδικής τεχνολογίας Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 3

28 Ψηφιακά Ηλεκτρονικά και Δυαδική Λογική Τεχνολογία Η δυαδική λογική ταιριάζει με την τεχνολογία του τρανζίστορ 2 καταστάσεις: ON-OFF, 1-0 Ψηφιακά ηλεκτρονικά (2 στάθμες) Δυαδική άλγεβρα Boole Λογική άλγεβρα Συσχέτιση με διακοπτικά κυκλώματα Η εργασία του Shannon (1938) C.E.Shannon Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 4

29 Στάθμες ψηφιακού σήματος Τεχνολογία i Στα πρώτα ολοκληρωμένα λογικά κυκλώματα η τάση τροφοδοσίας ήταν >15V ενώ σήμερα βρίσκεται γύρω στο 1V Δυαδική λογική 2 στάθμες V+ V- V+ και V- (π.χ. 5V και 0V) Τροφοδοσία και γείωση Αναπαριστούν το λογικό 1 και 0 αντίστοιχα Κυματομορφές Η στάθμη τάσης σε ένα σημείο του κυκλώματος στην εξέλιξη του χρόνου ιδανικά Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 5 T στην πραγματικότητα...

30 Φυσική Ημιαγωγών σε δύο διαφάνειες! Τεχνολογία Ημιαγωγοί Στοιχεία με κρυσταλλική δομή (πυρίτιο, γερμάνιο...) Μεταξύ αγωγών και μονωτών Σε θερμοκρασία δωματίου και καθαρή μορφή: όχι καλοί αγωγοί του ηλεκτρισμού Προσμίξεις με ακάθαρτα υλικά (impurities) Doping Προσθήκη ελεύθερων ηλεκτρονίων (donors) n-type Προσθήκη οπών (acceptors) απουσία ηλεκτρονίων p-type Τα χαρακτηριστικά αγωγιμότητας αλλάζουν! Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 6

31 Φυσική Ημιαγωγών σε δύο διαφάνειες! Τεχνολογία n Το ενδιαφέρον σημείο (επαφής) Όταν ενώνονται ημιαγωγοί n-type και p-type p Στο σημείο επαφής: κατάσταση ισορροπίας μετά από την αρχική μετακίνηση ηλεκτρονίων στο p- type, περαιτέρω ηλεκτρόνια απωθούνται - n p n p Με ορθή πόλωση, και άλλα ηλεκτρόνια μπορούν να υπερπηδήσουν το εμπόδιο και να φτάσουν στο p- type, οπότε παρατηρείται ροή ρεύματος Με ανάστροφη πόλωση, νέα ηλεκτρόνια δεν έχουν την ευκαιρία να φτάσουν στο p-type, οπότε δεν ρέει ρεύμα μέσω της επαφής την ανάστροφη πόλωση εκμεταλλεύονται τα ηλεκτρονική ψηφιακά κυκλώματα των υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 7

32 Γιατί δυαδική τεχνολογία; Τεχνολογία πηγή (source) πύλη (gate) n+ n+ καταβόθρα (drain) p- i Το τρανζίστορ αυτό είναι τύπου NMOS. Υπάρχει και το συμπληρωματικό PMOS. Το τρανζίστορ MOSFET υπόστρωμα (body) κανάλι (channel) Ο μικροσκοπικός διακόπτης των σύγχρονων κυκλωμάτων Η θεωρία λειτουργίας του είναι γνωστή από το αλλά τα πρώτα λειτουργικά κυκλώματα κατασκευάστηκαν τη δεκαετία του 60 Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 8

33 Λειτουργία του τρανζίστορ MOS(FET) Τεχνολογία V+ n+ n+ - p- V- ; Τι συμβαίνει στο τρανζίστορ PMOS; V+ n+ n+ ρεύμα V- p- Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 9

34 Η συρρίκνωση του τρανζίστορ Τεχνολογία Ένας σύγχρονος επεξεργαστής μπορεί να περιέχει πάνω από 1 δις τρανζίστορ σε μία επιφάνεια 250mm 2 Πλεονεκτήματα Ταχύτερη λειτουργία Πιο γρήγοροι χρόνοι ON-OFF Μικρότερη κατανάλωση ενέργειας Για τον ίδιο αριθμό τρανζίστορ! Μεγαλύτερη ολοκλήρωση Μείωση κόστους παραγωγής και αύξηση λειτουργικότητας Τρέχουσα εμπορική τεχνολογία: Μέγεθος (καναλιού) τρανζίστορ = 65nm Το μέλλον; 45 και 25 nm Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 10

35 Το (μικρο)τσιπ Τεχνολογία Ολοκληρωμένο κύκλωμα micro(chip) όλα τα στοιχεία συνδυάζονται στο ίδιο υπόστρωμα πυριτίου. Τρανζίστορ, αγωγοί Πυκνωτές, αντιστάσεις Intel P4 processor microchip (2005) 169 εκ. τρανζίστορ Νόμος του Moore (εμπειρικός) ο αριθμός των τρανζίστορ ανά ολοκληρωμένο κύκλωμα διπλασιάζεται κάθε 1,5-2 χρόνια Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 11

36 Κατασκευή ολοκληρωμένων κυκλωμάτων Υπολογιστικά Συστήματα Αρχιτεκτονική Η/Υ Οι βασικές μονάδες Ηλεκτρονικά κυκλώματα i Λόγω της απαιτούμενης ακρίβειας, μια γραμμή παραγωγής κοστίζει δισ. $ Γραμμές παραγωγής Φωτολιθογραφία με μάσκες Επικάλυψη με ειδικό φωτοανθεκτικό υλικό (photoresist) Έκθεση σε υπεριώδες φως (με το ανάλογο μήκος κύματος) Μέσω μιας μάσκας που επιλέγει τις περιοχές επεξεργασίας Απομάκρυνση photresist από επιλεγμένες περιοχές, αφήνοντας εκτεθειμένα τα μέρη προς επεξεργασία Διεργασίες στα εκτεθειμένα μέρη Οξείδωση, απόξεση, απόθεση μετάλλου, εμφύτευση ιόντων... Ταυτόχρονα σε εκατομμύρια τρανζίστορ! Επανάληψη Από το βήμα της μάσκας Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 12

37 Η αρχική επιφάνεια Τεχνολογία SiO - μονωτής 2 Ένα λεπτό επίπεδο SiO 2 σχηματίζεται με οξείδωση σε 1000 ο C p-epi πολύ καθαρό πυρίτιο υπόστρωμα πυριτίου Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 13

38 Εφαρμογή photoresist και μάσκας Τεχνολογία εκτεθειμένο τμήμα μάσκα φωτολιθογραφίας Η μάσκα της φωτολιθογραφίας είναι διαφορετική ανά βήμα επεξεργασίας (ανάλογα με το επιθυμητό σχήμα). επικάλυψη με photoresist Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 14

39 Εφαρμογή υπεριώδους ακτινοβολίας Τεχνολογία Στα μέρη που μένουν εκτεθειμένα μετά την υπεριώδη ακτινοβολία, το photoresist γίνεται εύπλαστο. Στη συνέχεια αφαιρείται με χημικό τρόπο, αφήνοντας εκτεθειμένα μέρη για το επόμενο βήμα κατεργασίας. Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 15

40 Μετά την απόξεση Τεχνολογία Στα μέρη που μένουν εκτεθειμένα εφαρμόζεται διαδικασία απόξεσης με τη βοήθεια οξέων. Στη συνέχεια η επιφάνεια καθαρίζεται με απιονισμένο νερό και στεγνώνει με άζωτο. Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 16

41 Απόθεση νέων στρωμάτων SiO 2 Τεχνολογία Πριν το βήμα αυτό έχει προηγηθεί πάλι η εφαρμογή photoresist και μάσκας! Στο εξής η εφαρμογή μάσκας θα εννοείται πριν κάθε νέο βήμα. SiO 2 μονωτής για το διαχωρισμό των τρανζίστορ Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 17

42 Doping Υπόστρωμα τρανζίστορ Τεχνολογία εμφύτευση ιόντων Μέσω της εμφύτευσης με τη βοήθεια μιας δέσμης ιόντων, αλλάζει ο τύπος του ημιαγωγού της περιοχής κάτω από το λεπτό στρώμα οξειδίου σχηματίζοντας το υπόστρωμα των τρανζίστορ NMOS (doping) υπόστρωμα p Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 18

43 Doping Υπόστρωμα τρανζίστορ Τεχνολογία εμφύτευση ιόντων Μέσω της εμφύτευσης με τη βοήθεια μιας δέσμης ιόντων, αλλάζει ο τύπος του ημιαγωγού της περιοχής κάτω από το λεπτό στρώμα οξειδίου σχηματίζοντας το υπόστρωμα των τρανζίστορ PMOS (doping) υπόστρωμα n υπόστρωμα p Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 19

44 Εναπόθεση polysilicon Τεχνολογία polysilicon Ένα σχήμα polysilicon εναποτίθεται χημικά με την κυκλοφορία αερίου μίγματος πάνω από την επιφάνεια πυριτίου θερμαινόμενη στους 650 ο C. Το σχήμα σχηματίζει τις πύλες των τρανζίστορ και τη μεταξύ τους διασύνδεση. Θα ακολουθήσει doping για να αυξηθεί η αγωγιμότητά του. Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 20

45 Doping πηγής και καταβόθρας τρανζίστορ Τεχνολογία Στη συνέχεια σχηματίζονται οι πηγές και καταβόθρες των τρανζίστορ ανάλογα με τον τύπο τους (NMOS ή PMOS) με εμφύτευση ιόντων. Δημιουργία των σημείων επαφής για τους αγωγούς διασύνδεσης. υπόστρωμα n n n υπόστρωμα p Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 21

46 Doping πηγής και καταβόθρας τρανζίστορ Τεχνολογία Στη συνέχεια σχηματίζονται οι πηγές και καταβόθρες των τρανζίστορ ανάλογα με τον τύπο τους (NMOS ή PMOS) με εμφύτευση ιόντων. Δημιουργία των σημείων επαφής για τους αγωγούς διασύνδεσης. p p υπόστρωμα n n n υπόστρωμα p Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 22

47 Πρώτο επίπεδο μεταλικών συνδέσεων Τεχνολογία μεταλλικές επαφές Τα επίπεδα μετάλλου δημιουργούνται με εξάχνωση του μεταλλικού υλικού σε κενό υπό την επίδραση δέσμης ηλεκτρονίων. p p n n υπόστρωμα n υπόστρωμα p Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 23

48 Διαδικασία παραγωγής Τεχνολογία [Rabaey 2003] Στην πραγματικότητα Οι δημιουργούμενες επιφάνειες δεν είναι απόλυτα επίπεδες ούτε έχουν κάθετες γωνίες τα χαρακτηριστικά είναι πιο ακανόνιστα Οι αναλογίες διαστάσεων είναι διαφορετικές ειδικά μελετημένες για την επιθυμητή ροή ηλεκτρονίων Τα επίπεδα μετάλλου είναι πολύ περισσότερα καταλαμβάνουν μεγάλο μέρος του ολοκληρωμένου κυκλώματος Τα βήματα κατασκευής είναι πολύ περισσότερα από την απλουστευμένη εικόνα που είδαμε οι δομές που κατασκευάζονται είναι πολυπλοκότερες Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 24

49 Ποια η λειτουργία του; Τεχνολογία V+ ( 1 ) A Υ V- ( 0 ) Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 25

50 Η πύλη NOT Τεχνολογία V+ ( 1 ) A Y A A NOT A V- ( 0 ) Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 26

51 Στο επόμενο μάθημα... Τεχνολογία Στο επόμενο... Ψηφιακά κυκλώματα για λογικές και αριθμητικές πράξεις Εισαγωγή στην Επιστήμη των Υπολογιστών Η Τεχνολογία των Υπολογιστών 27

52 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς (λογικές πράξεις) Μ.Στεφανιδάκης

53 Εκτέλεση πράξεων Εισαγωγή υπολογιστικό σύστημα ρολόι (clock) μονάδα ελέγχου πρόγραμμα ελέγχου ; Ποιες κατηγορίες πράξεων; Συγκροτείται από ψηφιακά δυαδικά κυκλώματα τμήμα επεξεργασίας δεδομένων δεδομένα εισόδου δεδομένα εξόδου Μνήμη Εκτελούν λογικές πράξεις μεταξύ σειρών bits οι οποίες αναπαριστούν δυαδικούς αριθμούς Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 2

54 Πράξεις με δυαδικούς αριθμούς Εισαγωγή Ο υπολογιστής μπορεί να εκτελέσει Λογικές πράξεις Αριθμητικές πράξεις Οι πράξεις εκτελούνται Σε ομάδες bits: δυαδικούς αριθμούς bytes ή πολλαπλάσιά τους Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 3

55 Bits & Bytes Εισαγωγή Bit H μικρότερη λογική ποσότητα - η μικρότερη μονάδα δεδομένων - 0 ή 1. Byte Ομάδα 8 bits Η ελάχιστη ποσότητα που μπορεί να χειριστεί ο υπολογιστής κατά την εκτέλεση μιας πράξης Μια σειρά από bytes αναπαριστά έναν δυαδικό αριθμό Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 4

56 Η ανατομία ενός byte Εισαγωγή το περισσότερο σημαντικό bit το λιγότερο σημαντικό bit bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 Γιατί είναι αυτή η σειρά των bits; Γιατί το λιγότερο σημαντικό bit είναι δεξιά και το περισσότερο σημαντικό αριστερά; Θα φανεί όταν μιλήσουμε για αριθμητικές πράξεις Προς το παρόν, το byte είναι απλώς μια οκτάδα bits Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 5

57 Λογικές πράξεις με bits Εισαγωγή Λογικές πράξεις είσοδος (1 bit) μονομελής πράξη (unary) έξοδος (1 bit) είσοδος Α (1 bit) είσοδος Β (1 bit) διμελής πράξη (binary) έξοδος Πώς εκτελείται η πράξη σε ομάδες bits; (1 bit) Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 6

58 Λογικές πράξεις με bits Εισαγωγή Λογικές πράξεις Μονομελής λογική πράξη NOT (αντιστροφή) Διμελείς λογικές πράξεις AND (λογικό-και) OR (λογικό-η) XOR (αποκλειστικό-η) Πράξεις σε ομάδες bits Εφαρμογή της πράξης στα αντίστοιχα bits Διμελείς πράξεις Μεταξύ των αντίστοιχων bits των δύο αριθμών Σε όλα τα bytes των αριθμών Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 7

59 Από το προηγούμενο: η πύλη NOT Εισαγωγή Λογικές πράξεις V+ ( 1 ) A Y A A Y = NOT A V- ( 0 ) Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 8

60 Δυαδική λογική: Αντιστροφή bits Εισαγωγή Λογικές πράξεις Αντιστροφή (NOT) Αντιστροφή των bits Πίνακας Αλήθειας A Y Σύμβολο πύλης NOT Α Υ (Α ή Α) Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 9

61 Ο τελεστής NOT σε δυαδικούς αριθμούς Εισαγωγή Λογικές πράξεις ! Η μέθοδος του υλικού (hardware): πολλαπλές ίδιες μονάδες εκτελούν την ίδια λειτουργία παράλληλα NOT H έξοδος Y i εξαρτάται μόνο από την είσοδο A i Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 10

62 Δυαδική λογική: AND Εισαγωγή Λογικές πράξεις Λογικό ΚΑΙ (AND) αποτέλεσμα 1, μόνο όταν και το Χ και το Υ είναι 1 0 AND X = X AND 0 = 0 1 AND X = X AND 1 = X Πίνακας Αλήθειας X Y AND Σύμβολο πύλης AND X X AND Y Y Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 11

63 Παράδειγμα υλοποίησης: η πύλη NAND Εισαγωγή Λογικές πράξεις A B Y V+ ( 1 )! Υλοποίηση πύλης AND: χρησιμοποι- ώντας μια πύλη NAND και μια πύλη NOT A Β A A B B V- ( 0 ) Υ = (AB) Υ Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 12

64 Ο τελεστής AND σε δυαδικούς αριθμούς Εισαγωγή Λογικές πράξεις AND Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 13

65 Μάσκα AND: για να θέσουμε bits στο 0 Εισαγωγή Λογικές πράξεις Ζητούμενο: σε λέξη των 8 bits να τεθούν σε 0 τα 3 λιγότερο σημαντικά bits. Στόχος: AND Μάσκα: Έξοδος: Η AND μάσκα περιέχει: 0 στα bits που θα γίνουν 0 0 AND X = 0 1 AND X = X 1 στα bits που θα παραμείνουν ως έχουν Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 14

66 Φραγή AND: για να θέσουμε σήμα στο 0 Εισαγωγή Λογικές πράξεις data in data out control data in control 0 AND X = 0 1 AND X = X data out Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 15

67 Δυαδική λογική: OR Εισαγωγή Λογικές πράξεις Λογικό Ή (OR) αποτέλεσμα 1, όταν Χ ή Υ ή και τα δύο είναι 1 1 OR X = X OR 1 = 1 0 OR X = X OR 0 = X Πίνακας Αλήθειας X Y OR Σύμβολο πύλης OR X X OR Y Y Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 16

68 Παράδειγμα υλοποίησης: η πύλη NOR Εισαγωγή Λογικές πράξεις V+ ( 1 ) A B Y A! Υλοποίηση πύλης OR: χρησιμοποι- ώντας μια πύλη NOR και μια πύλη NOT B A B V- ( 0 ) (A+B) Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 17

69 Ο τελεστής OR σε δυαδικούς αριθμούς Εισαγωγή Λογικές πράξεις OR Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 18

70 Μάσκα OR: για να θέσουμε bits στο 1 Εισαγωγή Λογικές πράξεις Ζητούμενο: σε λέξη των 8 bits να τεθούν σε 1 τα bits 0,4 και 5. Στόχος: OR Μάσκα: Έξοδος: Η OR μάσκα περιέχει: 1 στα bits που θα γίνουν 1 0 OR X = X 1 OR X = 1 0 στα bits που θα παραμείνουν ως έχουν Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 19

71 Συγκέντρωση σημάτων με OR Εισαγωγή Λογικές πράξεις a y b 0 OR X = X 1 OR X = 1 a b y Θα πρέπει ανά πάσα στιγμή όλα τα σήματα πλην ενός να είναι 0! Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 20

72 Δυαδική λογική: XOR Εισαγωγή Λογικές πράξεις Αποκλειστικό Ή (XOR) αποτέλεσμα 1, όταν μόνο το Χ ή μόνο το Υ είναι 1 1 XOR X = X XOR 1 = NOT X 0 XOR X = X XOR 0 = X! Υλοποίηση πύλης XOR: χρησιμοποι- ώντας συνδυασμούς άλλων πυλών X xor Y = XY'+X'Y Πίνακας Αλήθειας X Y XOR Σύμβολο πύλης XOR X X XOR Y Y Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 21

73 Μάσκα XOR: για να αντιστρέψουμε bits Εισαγωγή Λογικές πράξεις Ζητούμενο: σε λέξη των 8 bits να αντιστραφούν τα bits 3,6 και 7. Στόχος: XOR Μάσκα: Έξοδος: Η XOR μάσκα περιέχει: 1 στα bits που θα αντιστραφούν 0 στα bits που θα παραμείνουν ως έχουν Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 22

74 Δυαδική λογική: XΝOR Εισαγωγή Λογικές πράξεις Η συμπληρωματική συνάρτηση της XOR το αποτέλεσμα είναι 1, όταν τα Χ και Υ είναι όμοια συνάρτηση ισοδυναμίας! Υλοποίηση πύλης XNOR: χρησιμοποιώντας συνδυασμούς άλλων πυλών X xnor Y = XY+X'Y' Πίνακας Αλήθειας X 0 Y XΝOR Σύμβολο πύλης XΝOR X X XΝOR Y Y Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 23

75 Ολίσθηση (Shift) Εισαγωγή Λογικές πράξεις Ολίσθηση a b c d e f g h a b c d e f g h b c d e f g h 0 αριστερή ολίσθηση 0 a b c d e f g δεξιά ολίσθηση Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 24

76 Το Byte ξανά: βάρη δυαδικών ψηφίων Δυαδικοί αριθμοί το περισσότερο σημαντικό bit! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του bit 7 1 1x128 bit 6 1 1x64 bit 5 1 1x32 bit 4 1 1x16 bit 3 0x8 bit 2 0x4 bit 1 1x2 Μετατροπή από το δυαδικό στο δεκαδικό σύστημα bit 0 1 1x = 243 (δεκαδικό) το λιγότερο σημαντικό bit Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 25

77 Μετατροπή δεκαδικού σε δυαδικό Δυαδικοί αριθμοί! το λιγότερο σημαντικό bit Προσοχή στη θέση του περισσότερο σημαντικού bit! (δεκαδικό) = το περισσότερο σημαντικό bit Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 26

78 Συντομογραφίες δυαδικών αριθμών Δυαδικοί αριθμοί Δεκαεξαδικό σύστημα Ομαδοποίηση ανά 4 bits i Το δεκαεξαδικό σύστημα (hex) διευκολύνει τη χρήση των δυαδικών αριθμών από τον άνθρωπο. Παράδειγμα: στον ορισμό χρωμάτων A 1011 B 1100 C 1101 D 1110 E για ιστοσελίδες F Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 27

79 Παράδειγμα στο δεκαεξαδικό σύστημα Δυαδικοί αριθμοί Παράδειγμα: C = C994(hex) Παράδειγμα: E = 215E (hex) Συμπλήρωση με 0 στα αριστερά Δεν αλλάζει τον αριθμό, όπως ακριβώς και στο δεκαδικό σύστημα Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 28

80 Συντομογραφίες δυαδικών αριθμών Δυαδικοί αριθμοί Οκταδικό σύστημα Ομαδοποίηση ανά 3 bits i Το οκταδικό σύστημα (oct) διευκολύνει τη χρήση των δυαδικών αριθμών από τον άνθρωπο. Παράδειγμα: στον ορισμό δικαιωμάτων χρήσης αρχείων σε συστήματα τύπου Unix Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 29

81 Στο επόμενο μάθημα... Δυαδικοί αριθμοί Στο επόμενο... Αριθμητικές πράξεις Φυσικών αριθμών (χωρίς πρόσημο) Ακεραίων (με πρόσημο) Κλασματικών (κινητής υποδιαστολής) Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 30

82 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς (αριθμητικές πράξεις) Μ.Στεφανιδάκης

83 Πράξεις με δυαδικούς αριθμούς Δυαδικοί Αριθμοί Ο υπολογιστής μπορεί να εκτελέσει Λογικές πράξεις Αριθμητικές πράξεις Οι πράξεις εκτελούνται Σε ομάδες bits (bytes ή πολλαπλάσιά τους) Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 2

84 Το Byte ως δυαδικός αριθμός Δυαδικοί αριθμοί το περισσότερο σημαντικό bit! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του bit 7 1 1x128 bit 6 1 1x64 bit 5 1 1x32 bit 4 1 1x16 bit 3 0x8 bit 2 0x4 bit 1 1x2 Μετατροπή από το δυαδικό στο δεκαδικό σύστημα bit 0 1 1x = 243 (δεκαδικό) το λιγότερο σημαντικό bit Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 3

85 Μετατροπή δεκαδικού σε δυαδικό Δυαδικοί αριθμοί! το λιγότερο σημαντικό bit Προσοχή στη θέση του περισσότερο σημαντικού bit! (δεκαδικό) = το περισσότερο σημαντικό bit Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 4

86 Συντομογραφίες δυαδικών αριθμών Δυαδικοί αριθμοί Δεκαεξαδικό σύστημα Ομαδοποίηση ανά 4 bits A 1011 B 1100 C 1101 D 1110 E 1111 F Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 5

87 Παράδειγμα στο δεκαεξαδικό σύστημα Δυαδικοί αριθμοί Παράδειγμα: C = C994(hex) Παράδειγμα: E = 215E (hex) Συμπλήρωση με 0 στα αριστερά Δεν αλλάζει τον αριθμό, όπως ακριβώς και στο δεκαδικό σύστημα Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 6

88 Φυσικοί αριθμοί (χωρίς πρόσημο) Δυαδικοί αριθμοί Φυσικοί αριθμοί Άμεση αντιστοιχία Με n bits περιγράφονται Οι φυσικοί αριθμοί από 0 έως και 2 n Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 7

89 Ακέραιοι αριθμοί (με πρόσημο) Δυαδικοί αριθμοί Φυσικοί αριθμοί Ακέραιοι Πώς θα αναπαρασταθούν οι αρνητικοί; Και θα γίνονται εύκολα οι πράξεις! Όχι καλή ιδέα: Ξεχωριστό bit πρόσημου Αριθμός (Ν bits) Πρόσημο (1 bit) ± (0/1) Διάστημα τιμών για αριθμούς με n bits -(2 n-1-1) έως +(2 n-1-1) (για n=8, ) ένα χρήσιμο bit λιγότερο δυσκολία στις πράξεις 2 αναπαραστάσεις του 0; Μέγεθος (Ν-1 bits) Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 8

90 Ακέραιοι αριθμοί Δυαδικοί αριθμοί Φυσικοί αριθμοί Ακέραιοι Επίσης όχι καλή ιδέα: Συμπλήρωμα ως προς 1 αντιστροφή όλων των bits του αριθμού Πιο σημαντικό bit: 0 για θετικούς, 1 για αρνητικούς Διάστημα τιμών για αριθμούς με n bits -(2 n-1-1) έως +(2 n-1-1) (γιατί;) Τα ίδια προβλήματα με την χρήση ξεχωριστού bit πρόσημου! Καλή ιδέα! Συμπλήρωμα ως προς 2 Πώς υπολογίζεται; Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 9

91 Συμπλήρωμα ως προς 2 Δυαδικοί αριθμοί Φυσικοί αριθμοί Ακέραιοι Ισούται με το συμπλήρωμα ως προς εμπειρικός κανόνας αντιστροφή όλων των bits εκτός από τα δεξιότερα συνεχόμενα 0 και το πρώτο 1 αριστερά από αυτά Δεν ισχύει για το 0 (και το ) Συμπλήρωμα ως προς 2: παραδείγματα Αλλά: Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 10

92 Ακέραιοι με συμπλήρωμα ως προς 2 Δυαδικοί αριθμοί Φυσικοί αριθμοί Ακέραιοι Διάστημα τιμών για αριθμούς με n bits -(2 n-1 ) έως +(2 n-1-1) (για n=8, ) Μόνο το +(2 n-1 ) δεν μπορεί να αναπαρασταθεί Ευκολία στις πράξεις αφαίρεση = πρόσθεση του συμπληρώματος ως προς 2 Μία και μοναδική αναπαράσταση του 0 Πιο σημαντικό bit: 0 για θετικούς, 1 για αρνητικούς Δεν είναι όμως bit προσήμου!!! Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 11

93 Κλασματικοί αριθμοί Δυαδικοί αριθμοί Φυσικοί αριθμοί Ακέραιοι Κλασματικοί Θεωρητικά: Θα μπορούσαμε να επεξεργαζόμαστε ξεχωριστά το ακέραιο και το κλασματικό μέρος Αλλά: Δυσκολία στις πράξεις απώλεια ακρίβειας κατά τις διαιρέσεις Αδυναμία αναπαράστασης πολύ μεγάλων και πολύ μικρών αριθμών Η λύση: Αριθμοί κινητής υποδιαστολής (floating point) Εύκολη αναπαράσταση τόσο του όσο και του 0, Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 12

94 Αριθμοί κινητής υποδιαστολής Δυαδικοί αριθμοί Φυσικοί αριθμοί Ακέραιοι Κλασματικοί 3 μέρη Πρόσημο (Π) (1 bit) 0 = + 1 = - Εκθέτης (Ε) (8 ή 11 bits) Η βάση είναι το 2 (εννοείται) Θετικοί και αρνητικοί εκθέτες με πλεόνασμα 127 ή 1023 (π.χ. αντί -55, Ε= = 72! ) Σημαινόμενο τμήμα (Σ) (23 ή 52 bits) Κανονικοποίηση: μορφή 1,xxxxxxxxxxxxx Το 1, εννοείται και δεν αποθηκεύεται Τελικός αριθμός: -1 Π E-127 (ή Ε-1023) x 1.Σ x 2 Ειδικοί αριθμοί: 0,, NaN (Not a Number) Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 13

95 Αριθμητικές πράξεις Αριθμητικές πράξεις Οι βασικές πράξεις Πρόσθεση Αφαίρεση Άλλες πράξεις Πολλαπλασιασμός Διαίρεση Επίσης: Τετραγωνική ρίζα, τριγωνομετρικές συναρτήσεις, εκθετικά, λογάριθμοι κλπ.. Υλοποίηση σε υλικό με διάφορες τεχνικές Π.χ με πολυώνυμα Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 14

96 Προσθέτοντας 2 bits Αριθμητικές πράξεις bits άθροισμα κρατούμενο Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 15

97 Ημιαθροιστής (half-adder) Αριθμητικές πράξεις A B S A 0 B 0 S 0 C ; C Αν απαιτείται πρόσθεση αριθμών με περισσότερα bits; Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 16

98 Προσθέτοντας δυαδικούς αριθμούς (μη προσημασμένους) Κρατούμενο Α Αριθμός (119) Β Αριθμός ( 88) Άθροισμα (207) Αριθμοί με ίδιο μήκος (ίσος αριθμός bits) 2. Αρχίζοντας από το λιγότερο σημαντικό bit (το δεξιότερο) 3. Προσθέτουμε ζεύγη bits και μεταφέρουμε το κρατούμενο (αν υπάρχει) προς τα αριστερά Το προσθέτουμε στο επόμενο ζεύγος bits Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 17

99 Προσθέτοντας δυαδικούς αριθμούς (μη προσημασμένους) Υπερχείλιση Στον υπολογιστή το πλήθος των bits ανά αριθμό είναι προκαθορισμένο Το αποτέλεσμα της πρόσθεσης θα πρέπει να χωρά στα διαθέσιμα bits Μη προσημασμένοι αριθμοί: αριθμός με Ν bits πεδίο τιμών [ Ν - 1 ] π.χ. για αριθμούς με 8 bits, από 0 έως 255 Κρατούμενο Α Αριθμός (180) Β Αριθμός ( 78) Άθροισμα (258) υπερχείλιση διαθέσιμος χώρος Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 18

100 Προσθέτοντας δυαδικούς αριθμούς (προσημασμένους) Προσημασμένοι ακέραιοι Συμπλήρωμα ως προς 2 Το περισσότερο σημαντικό bit υποδηλώνει το πρόσημο 0=θετικός, 1=αρνητικός αριθμός με Ν bits πεδίο τιμών [ -2 Ν Ν-1-1 ] π.χ. για αριθμούς με 8 bits, από -128 έως +127 Πρόσθεση Όπως σε μη προσημασμένους Τελικό κρατούμενο αγνοείται Έλεγχος υπερχείλισης; Αφαίρεση = πρόσθεση του συμπληρώματος ως προς 2 του αφαιρετέου Α Β = Α + (-Β) Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 19

101 Προσθέτοντας δυαδικούς αριθμούς (προσημασμένους) Κρατούμενο 1 Α Αριθμός (+17) Β Αριθμός (+22) Άθροισμα (+39) Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 20

102 Προσθέτοντας δυαδικούς αριθμούς (προσημασμένους) Κρατούμενο Α Αριθμός (+24) Β Αριθμός (-17) Άθροισμα ( +7) το κρατούμενο αγνοείται Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 21

103 Υπερχείλιση σε προσημασμένους αριθμούς ( ) ( ) προσημασμένοι αριθμοί με 8 bits ( ) αρνητικοί θετικοί ( ) ( ) ( ) Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 22

104 Υπερχείλιση σε προσημασμένους αριθμούς Κρατούμενο Α Αριθμός (+127) Β Αριθμός ( +3) Άθροισμα (-126;) Το άθροισμα αριθμών με ίδιο πρόσημο θα πρέπει να έχει επίσης το ίδιο πρόσημο! στην αντίθετη περίπτωση: υπερχείλιση Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 23

105 Υπερχείλιση σε προσημασμένους αριθμούς Κρατούμενο 1 1 Α Αριθμός (-126) Β Αριθμός ( -5) Άθροισμα (+124;) Το άθροισμα αριθμών με ίδιο πρόσημο θα πρέπει να έχει επίσης το ίδιο πρόσημο! στην αντίθετη περίπτωση: υπερχείλιση Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 24

106 Πράξεις με αριθμούς κινητής υποδιαστολής Αριθμητικές πράξεις Σύνθετη διαδικασία Η γενική μορφή της πρόσθεσης: 1. Σύγκριση προσήμων αν είναι ίδια πρόσθεση αλλιώς αφαίρεση 2. Εξίσωση εκθετών μετακίνηση υποδιαστολής 3. Πρόσθεση ή αφαίρεση σημαινόμενων τμημάτων ακέραιο και κλασματικό μέρος 4. Κανονικοποίηση αποτελέσματος 5. Έλεγχος για υπερχείλιση Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 25

107 Πράξεις με αριθμούς κινητής υποδιαστολής 132 Α αριθμός: x 1,1011 ( +2 5 x 1,1011 ) 130 B αριθμός: x 1,011 ( +2 3 x 1,011 ) A +2 5 x 1, B +2 5 x 0,01011 = +2 5 x 10,00001 κανονικοποίηση +2 6 x 1, αποτέλεσμα: Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις 133 με δυαδικούς αριθμούς 26

108 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων (κείμενο, ήχος και εικόνα στον υπολογιστή) Μ.Στεφανιδάκης

109 Αναπαράσταση δεδομένων Αναπαράσταση δεδομένων ήχος εικόνα βίντεο κείμενο αριθμοί εντολές μηχανής! Δεδομένα: ανεξάρτητα από τύπο και προέλευση, στον υπολογιστή υπάρχουν σε μία μορφή: 0 και 1 συνεχείς (αναλογικές) ποσότητες διακριτές ποσότητες (σύμβολα) ψηφιοποίηση αναπαράσταση δυαδικοί αριθμοί κωδικοποίηση σειρές bits Ψηφιοποίηση Διαδικασία μετατροπής συνεχών τιμών σε διακριτά σύμβολα Αναπαράσταση Διαδικασία αντιστοίχισης συμβόλων σε δυαδικούς αριθμούς Κωδικοποίηση Αποθήκευση δυαδικών αριθμών σε σειρές bits επεξεργασία Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 2

110 Η ερμηνεία της αναπαράστασης Αναπαράσταση δεδομένων Κάπου στη μνήμη του υπολογιστή Βρίσκεται αποθηκευμένη η σειρά bits Πόσα σύμβολα αναπαριστά; Πόσα bits ανά σύμβολο;! Στα ερωτήματα αυτά μπορεί να απαντήσει μόνο ο προγραμματιστής της εφαρμογής που χειρίζεται τα δεδομένα! Ποιος ο τύπος των δεδομένων; Ποια συγκεκριμένη ποσότητα συμβολίζει; Πώς θα το χειριστεί ο υπολογιστής; Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 3

111 Αναπαράσταση με δυαδικούς αριθμούς Αναπαράσταση δεδομένων Σειρά n bits Δυαδικός αριθμός με n bits (n 1) μπορεί να αναπαραστήσει 2 n διαφορετικά σύμβολα Μη αριθμητικά δεδομένα Κείμενο, εντολές μηχανής, ήχος, εικόνα Σύνολο διαφορετικών αντικειμένων (συμβόλων) Αντιστοίχιση κάθε συμβόλου σε μοναδικό δυαδικό αριθμό (code point) Αναπαράσταση Η ακριβής αντιστοίχιση συνήθως ορίζεται σε ένα πρότυπο (standard) Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 4

112 Η αποθήκευση στη μνήμη Αναπαράσταση δεδομένων μονάδα ελέγχου τμήμα επεξεργασίας δεδομένων read [ 2 ] 3F Μνήμη F Μοντέλο μνήμης Διευθύνσεις μνήμης Συστοιχία αποθηκευτικών θέσεων Σε κάθε θέση αποθηκεύεται (συνήθως) 1 byte Κάθε θέση διαθέτει μοναδική διεύθυνση Επιλογή θέσης κατά την προσπέλαση (ανάγνωση-εγγραφή) Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 5

113 Η αποθήκευση στη μνήμη Αναπαράσταση δεδομένων μονάδα ελέγχου τμήμα επεξεργασίας δεδομένων write [ 0 ] 94 Μνήμη F ; Με διεύθυνση των n bits, πόσες διαφορετικές θέσεις μνήμης μπορούμε να προσπελάσουμε; Χωρητικότητα μνήμης Εκφράζεται σε πολλαπλάσια του byte 1 KByte (KB) = 1024 Bytes (2 10 ) 1 MByte (MB) = 1024 ΚBytes (2 10 κλπ Διευθύνσεις μνήμης 10 ) Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 6

114 Θέματα αποθήκευσης δυαδικών αριθμών Αναπαράσταση δεδομένων ; Πώς σχετίζεται η σειρά αποθήκευσης των bytes με τα Ταξίδια του Γκιούλιβερ ; Όταν Ένας δυαδικός αριθμός χρειάζεται περισσότερα από ένα byte για να αποθηκεύσει τα ψηφία του Παράδειγμα: 3FC (hex) = Σε 2 bytes! περισσότερο σημαντικό byte λιγότερο σημαντικό byte Προφανώς σε συνεχόμενες θέσεις μνήμης Αλλά: ποιο byte αποθηκεύεται πρώτο; Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 7

115 Θέματα αποθήκευσης δυαδικών αριθμών Αναπαράσταση δεδομένων αποθηκεύοντας το 03FC Μνήμη FC 3 03 Μνήμη FC i Στο Διαδίκτυο τα δεδομένα διακινούνται σε big-endian μορφη little-endian (Intel) Το λιγότερο σημαντικό byte στη θέση μνήμης με μικρότερη διεύθυνση big-endian (Motorola, Sun, PowerPC) Το περισσότερο σημαντικό byte στη θέση μνήμης με μικρότερη διεύθυνση Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 8

116 Αρχικές αναπαραστάσεις κειμένου Αναπαράσταση δεδομένων Κείμενο Οι πρώτες αναπαραστάσεις κειμένου Στον υπολογιστή 6-7 bits ανά χαρακτήρα Πόσοι διαφορετικοί χαρακτήρες; Μη εκτυπώσιμοι χαρακτήρες Χαρακτήρες ελέγχου Ιδιαίτερα χρήσιμοι για τις συσκευές εξόδου της εποχής (εκτυπωτές, τηλέτυπα ) Νέα γραμμή (LINE FEED LF) Επιστροφή κεφαλής εκτύπωσης (CARRIAGE RETURN CR) Καμπανάκι (BELL) κλπ Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 9

117 Κώδικας ASCII Αναπαράσταση δεδομένων Κείμενο Βασικό αρχικό πρότυπο αναπαράστασης κειμένου 7 bits ανά χαρακτήρα i ASCII: American Standard Code for Information Exchange Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 10

118 Κείμενο σε κώδικα ASCII Αναπαράσταση δεδομένων Κείμενο ; Με 7 bits ανά χαρακτήρα και χρήση bytes, 1 bit μένει αχρησιμοποίητο. Πόσοι επιπλέον χαρακτήρες με το bit αυτό; 7 bits ανά χαρακτήρα 128 χαρακτήρες Αναπαράσταση με τους αριθμούς Κανονικοί χαρακτήρες (εκτυπώσιμοι) 32 64, 91 96, = σημεία στίξης κ.ά. (32 = SPACE!) = κεφαλαία λατινικά (Α-Ζ) = πεζά λατινικά (a-z) Χαρακτήρες ελέγχου (μη εκτυπώσιμοι) 0 31, 127 επιζούν τα: 9 (TAB), 13/10 (CR/LF, σήμανση νέας γραμμής ) Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 11

119 Κείμενο σε κώδικα ASCII Αναπαράσταση δεδομένων Κείμενο Παράδειγμα H a v e a n i c e d a y! ! Εφόσον η κωδικοποίηση είναι με 1 byte ανά χαρακτήρα, δεν τίθεται θέμα little- ή big- endian Γλώσσες προγραμματισμού Συμβολοσειρά (string) Σε γλώσσες όπως η C, το 0 (αριθμητικό) συμβολίζει το τέλος της συμβολοσειράς Ο υπολογιστής μπορεί να κάνει πράξεις (π.χ. σύγκριση) με τη συμβολοσειρά Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 12

120 Επεκτάσεις κώδικα ASCII Αναπαράσταση δεδομένων Κείμενο! Χρησιμοποιώντας τον ISO δεν είναι δυνατή η αναπαράσταση των ελληνικών! Χρήση του 1 επιπλέον bit του byte χαρακτήρες, αριθμοί αντιστοιχούν στον αρχικό ASCII : επεκταμένα αλφάβητα Επέκταση αλφαβήτων (πρότυπα) Χαρακτήρες που δεν υπάρχουν στον ASCII Διαφορετικά ανά γλώσσα! Π.χ.: ISO : Δυτική Ευρώπη (Å, Ñ, Æ,ä, ø κλπ) ISO : Νέα Ελληνικά και πολλά άλλα πρότυπα για τις υπόλοιπες γλώσσες Επίσης: μη πρότυπες λύσεις Για Windows, Mac.. Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 13

121 Κώδικας ISO Αναπαράσταση δεδομένων Κείμενο [Wikipedia] Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 14

122 Κείμενο σε κώδικα ISO Αναπαράσταση δεδομένων Κείμενο Παράδειγμα Γ ε ι α σ ο υ! ! Οι αναπαραστάσεις αλφαβήτων με 1 byte ανά χαρακτήρα τείνουν να καταργηθούν! Επέκταση κώδικα ASCII όπως στον ASCII πρόσθετοι χαρακτήρες ελέγχου ελληνικά και σχετικά σύμβολα Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 15

123 Κώδικας Unicode Αναπαράσταση δεδομένων Κείμενο! Με περισσότερα από 1 bytes ανά χαρακτήρα τίθεται θέμα σειρά αποθήκευσης των bytes! Για την αναπαράσταση όλων των αλφαβήτων! Έχουν οριστεί σχεδόν χαρακτήρες Καλύπτει ιδεογράμματα, φωνητικές αναπαραστάσεις κλπ Θα μπορούσε να καλύψει πάνω από 1 εκ. χαρακτήρες! Κάθε χαρακτήρας αναπαρίσταται με περισσότερα από ένα bytes Συνήθεις κωδικοποιήσεις: UCS-2 και UTF-8 Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 16

124 Ελληνικά και Unicode Αναπαράσταση δεδομένων Κείμενο Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 17

125 Κείμενο σε Unicode Αναπαράσταση δεδομένων Κείμενο Παράδειγμα Γ ε ι α σ ο υ! B B B C BF C Κωδικοποίηση UCS-2 (big-endian) B5 03 B9 03 B C3 03 BF 03 C Κωδικοποίηση UCS-2 (little-endian) B5 03 B9 03 B C3 03 BF 03 C Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 18

126 Unicode σε κωδικοποίηση UTF-8 Αναπαράσταση δεδομένων Κείμενο Αναπαράσταση μεταβλητού μήκους 00 7F Unicode 0xxxxxxx Κωδικοποίηση UTF-8! 80 7FF 800 FFFF FFFF 110xxxxx 10xxxxxx 1110xxxx 10xxxxxx 10xxxxxx 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx Η κωδικοποίηση UTF-8 τείνει να επικρατήσει σε όλα τα προγράμματα που χειρίζονται κείμενα Unicode! Το βασικό λατινικό αλφάβητο (ASCII)( χρησιμοποιεί 1 byte ανά χαρακτήρα Προς τα πίσω συμβατότητα Τα ελληνικά, 2 bytes Ποια η κωδικοποίηση κατά UTF-8 του τελευταίου παραδείγματος; Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 19

127 Ήχος: Ψηφιοποίηση και Αποθήκευση Αναπαράσταση δεδομένων Κείμενο Ήχος δειγματοληψία κβάντωση κωδικοποίηση Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 20

128 Εικόνα: από τον αναλογικό στον ψηφιακό κόσμο Αναπαράσταση δεδομένων Κείμενο Ήχος Εικόνα αισθητήρες φωτός μετατροπή σήματος από αναλογικό σε ψηφιακό Φωτοευαίσθητα κύτταρα για τρία χρώματα (κόκκινο-πράσινο-μπλε) Μετατροπή σήματος σε ψηφιακή πληροφορία Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 21

129 Από τον αναλογικό στον ψηφιακό κόσμο: ανάλυση εικόνας Αναπαράσταση δεδομένων Κείμενο Ήχος Εικόνα Μεταφορά στον υπολογιστή: Χωρισμός σε pixels (εικονοστοιχεία) Διαστάσεις εικόνας X x Y pixels (πλάτος x ύψος) Ανάλυση εικόνας dpi (dots per inch) pixels/ίντσα μεγαλύτερη ανάλυση = περισσότερη λεπτομέρεια αλλά και μέγεθος αρχείων Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 22

130 Από τον αναλογικό στον ψηφιακό κόσμο: βάθος χρώματος Αναπαράσταση δεδομένων Κείμενο Ήχος Εικόνα Στον φυσικό κόσμο Συνεχές (αναλογικό) πεδίο τιμών Στον υπολογιστή: Διακριτές (ψηφιακές) στάθμες Βάθος Χρώματος bits/pixel μεγαλύτερο βάθος = περισσότερες αποχρώσεις αλλά και μέγεθος αρχείων Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 23

131 Αναπαράσταση pixels: 16,7 εκ. χρώματα (true color) 1 pixel R:144 G:128 B:118 R:201 G:174 B:134 R:193 G:164 B:179 3 bytes/pixel (24bits): R(ed) G(reen) B(lue) 256 στάθμες ανά συνιστώσα χρώματος 256x256x256 = χρώματα εικόνες με μεγαλύτερο βάθος χρώματος 32 έως 48 bits Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 24

132 Αναπαράσταση pixels: Παλέτες Παλέτα: πίνακας αντιστοίχισης χρωμάτων Μέγεθος παλέτας καθορίζει bits/pixel και μέγιστο αριθμό χρωμάτων pixel Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων παλέτα 0 R: 0 G: 0 B: 0 1 R: 128 G: 128 B: R: 128 G: 64 B: 0

133 Διανυσματικά γραφικά Αναπαράσταση δεδομένων Κείμενο Ήχος Εικόνα Περιγραφή σχημάτων Ως σύνολο ευθύγραμμων και καμπύλων τμημάτων Με συντεταγμένες Εύρεση σημείων μέσω μαθηματικού τύπου Εύκολη αλλαγή μεγέθους γραφικών Χωρίς παραμόρφωση των σχημάτων Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 26

134 Αναπαράσταση βίντεο Αναπαράσταση δεδομένων Κείμενο Ήχος Εικόνα Βίντεο Κινούμενη εικόνα (καρέ) όπως αναπαριστούμε τις απλές εικόνες αλλά: με χρήση συμπίεσης Για μείωση όγκου δεδομένων Γειτονικά καρέ έχουν πολλές ομοιότητες Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 27

135 Κωδικοποίηση εντολών μηχανής Αναπαράσταση δεδομένων Κείμενο Ήχος Εικόνα Βίντεο Εντολές Μηχανής opcode operand1 operand2.. operandn Περιγράφει το είδος της πράξης που θα εκτελεστεί Περιγράφουν την προέλευση των δεδομένων εισόδου (αριθμό καταχωρητή, διεύθυνση μνήμης κλπ) και τον προορισμό των δεδομένων εξόδου (αποτέλεσμα πράξης) Το είδος της πράξης προσδιορίζει τον τύπο, την προέλευση και τον αριθμό των δεδομένων που συμμετέχουν στην πράξη! Εισαγωγή στην Επιστήμη των Υπολογιστών Αναπαράσταση Μη Αριθμητικών Δεδομένων 28

136 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας και η κύρια μνήμη) Μ.Στεφανιδάκης

137 Ένα τυπικό υπολογιστικό σύστημα σήμερα Εισαγωγή CPU CPU οθόνη έως 6.4GB/s P-bus (host bus, FSB ) video device AGP-PCIe έως 2.1GB/s north bridge M-bus (mem bus) έως 3.2GB/s DRAM ποντίκι, πληκτρολόγιο, εκτυπωτές, σαρωτές... USB έως 480Mbit/s south bridge έως 266ΜB/s (S)ATA ΜB/s PCI σκληροί δίσκοι, CD/DVD, δικτυακή σύνδεση, [δισκέτες] [ταινίες] Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 2

138 Τα βασικά υποσυστήματα Εισαγωγή Κεντρική Μονάδα Επεξεργασίας ΚΜΕ CPU ΚΜΕ CPU! Τα σημερινά συστήματα συνήθως διαθέτουν περισσότερες από μία ΚΜΕ: είτε σε διαφορετικά μικροτσίπ είτε ως πολλαπλούς πυρήνες (cores) στο ίδιο μικροτσίπ! οθόνη video device ποντίκι, πληκτρολόγιο, εκτυπωτές, σαρωτές... AGP-PCIe έως 2.1GB/s USB έως 480Mbit/s north bridge south bridge έως 266ΜB/s έως 6.4GB/s M-bus (mem bus) έως 3.2GB/s (S)ATA ΜB/s PCI DRAM σκληροί δίσκοι, CD/DVD, δικτυακή σύνδεση, [δισκέτες] [ταινίες] P-bus (host bus, FSB ) Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 3

139 Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Εισαγωγή ΚΜΕ Central Processing Unit (CPU) Εκτέλεση πράξεων επί των δεδομένων Αριθμητικές-λογικές πράξεις Μεταφορές δεδομένων από-προς τη μνήμη Συγκρίσεις και διακλάδωση υπό συνθήκη Επιλογή επιθυμητής πράξης Εντολές Πρόγραμμα: ακολουθία εντολών Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 4

140 Τμήματα ΚΜΕ (CPU) Εισαγωγή ΚΜΕ ρολόι (clock) μονάδα ελέγχου πρόγραμμα ελέγχου ΚΜΕ επεξεργασία δεδομένων δεδομένα εισόδου δεδομένα εξόδου Επεξεργασία δεδομένων Μνήμη Καθοδήγηση από τη μονάδα ελέγχου Βάσει του προγράμματος εκτέλεσης (εντολών) Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 5

141 Επεξεργασία δεδομένων Εισαγωγή ΚΜΕ Μονοπάτι δεδομένων (Datapath) Ποιος εκτελεί τις πράξεις μεταξύ δεδομένων; Αριθμητική-λογική μονάδα (ΑΛΜ) Από πού προέρχονται τα δεδομένα εισόδου στην ΑΛΜ και πού αποθηκεύεται το αποτέλεσμα της πράξης; Καταχωρητές Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 6

142 Αριθμητική-Λογική Μονάδα (ΑΛΜ) Εισαγωγή ΚΜΕ λέξη Α επιλογή πράξης λέξη Β ALU αποτέλεσμα Arithmetic-Logic Unit (ALU) Εκτέλεση αριθμητικών και λογικών πράξεων Πρόσθεση, αφαίρεση, AND, OR, XOR, NOT κλπ Επιλογή πράξης από τη μονάδα ελέγχου Μεταξύ λέξεων δεδομένων Πολλαπλάσια του byte Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 7

143 Καταχωρητές (registers) Εισαγωγή ΚΜΕ καταχωρητές add R1, R2,R3 (R1 = R2 + R3) ALU Καταχωρητές Αυτόνομες θέσεις αποθήκευσης μέσα στην ΚΜΕ Μία λέξη δεδομένων Γρήγορη προσπέλαση Προσωρινή αποθήκευση δεδομένων Δεδομένα εισόδου και εξόδου ΑΛΜ (ALU)( Γενικοί καταχωρητές δεδομένων: π.χ. R1, R2, R3 Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 8

144 Τμήματα ΚΜΕ (CPU) Εισαγωγή ΚΜΕ ρολόι (clock) μονάδα ελέγχου πρόγραμμα ελέγχου δεδομένα Μνήμη καταχωρητές ΚΜΕ ALU Εντολές φόρτωσης καταχωρητών από/προς μνήμη (load store) Ώστε να χρησιμοποιηθούν στη συνέχεια στην ΑΛΜ Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 9

145 Έλεγχος εκτέλεσης εντολών Εισαγωγή ΚΜΕ Μονάδα ελέγχου (control( unit) Εκτέλεση εντολών μηχανής Ποια είναι η επόμενη προς εκτέλεση εντολή; Μετρητής προγράμματος (Program Counter PC) Πώς επιλέγεται η πράξη της ΑΛΜ και οι καταχωρητές για τα δεδομένα εισόδου εξόδου; Αποκωδικοποίηση εντολών Με βάση τα bits της εντολής δημιουργούνται σήματα ελέγχου λειτουργίας όλης της ΚΜΕ Τήρηση χρονισμών εκτέλεσης κύκλος μηχανής Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 10

146 Program Counter (PC) Εισαγωγή ΚΜΕ Καταχωρητής διεύθυνσης Της επόμενης εντολής στη μνήμη Ανάκληση εντολής από μνήμη Αυτόματη αύξηση Δείχνει στην επόμενη θέση μνήμης (επόμενη εντολή) μετά την εκτέλεση της τρέχουσας εντολής PC = PC + d Ειδική περίπτωση: διακλάδωση Μετά από σύγκριση Φόρτωση του PC με διαφορετική τιμή Μεταφορά της ροής εκτέλεσης σε άλλο σημείο Υλοποίηση δομών if then else Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 11

147 Τι περιγράφουν τα bits μιας εντολής μηχανής; Εισαγωγή ΚΜΕ opcode operand1 operand2.. operandn Περιγράφει το είδος της πράξης που θα εκτελεστεί Περιγράφουν την προέλευση των δεδομένων εισόδου (αριθμό καταχωρητή, διεύθυνση μνήμης κλπ) και τον προορισμό των δεδομένων εξόδου (αποτέλεσμα πράξης) Το είδος της πράξης προσδιορίζει τον τύπο, την προέλευση και τον αριθμό των δεδομένων που συμμετέχουν στην πράξη! Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 12

148 Τμήματα ΚΜΕ (CPU) Εισαγωγή ΚΜΕ ρολόι (clock) PC εντολή αποκωδικοποίηση καταχωρητές διεύθυνση εντολής επόμενη εντολή δεδομένα Μνήμη ΚΜΕ ALU Αποκωδικοποίηση εντολής Δημιουργία σημάτων ελέγχου ανάλογα με bits εντολής Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 13

149 Εκτέλεση εντολών: ο κύκλος μηχανής Εισαγωγή ΚΜΕ Fetch: Φέρε την επόμενη εντολή προς εκτέλεση από τη μνήμη για πάντα! Decode: Αποκωδικοποίησε την εντολή (προετοίμασε τα σήματα ελέγχου και τις πηγές των δεδομένων) Execute: Εκτέλεσε την απαιτούμενη πράξη/λειτουργία Store: Αποθήκευσε τα αποτελέσματα (εάν απαιτείται) Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 14

150 Αρχιτεκτονικές συνόλου εντολών Εισαγωγή ΚΜΕ Υπολογιστές σύνθετου συνόλου εντολών Complex Instruction Set Computer (CISC) Μεγάλο σετ εντολών (σύνθετες λειτουργίες) Εύκολη συγγραφή προγραμμάτων Πολύπλοκη ΚΜΕ Υπολογιστές περιορισμένου σετ εντολών Reduced Instruction Set Computer (RISC) Μικρό σύνολο απλών εντολών (απλές λειτουργίες) Μεγαλύτερα προγράμματα Απλούστερη KME Μεγαλύτερη χρησιμοποίηση (παραλληλία) Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 15

151 Τα βασικά υποσυστήματα Εισαγωγή ΚΜΕ Μνήμη Κεντρική Μονάδα Επεξεργασίας ΚΜΕ CPU ΚΜΕ CPU οθόνη video device ποντίκι, πληκτρολόγιο, εκτυπωτές, σαρωτές... AGP-PCIe έως 2.1GB/s USB έως 480Mbit/s north bridge south bridge έως 266ΜB/s έως 6.4GB/s M-bus (mem bus) έως 3.2GB/s ATA ΜB/s PCI DRAM σκληροί δίσκοι, CD/DVD, δικτυακή σύνδεση, [δισκέτες] [ταινίες] P-bus (host bus, FSB ) Κύρια Μνήμη Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 16

152 Κύρια μνήμη Εισαγωγή ΚΜΕ Μνήμη Βασικό υποσύστημα του υπολογιστή Αποθήκευση δεδομένων και προγραμμάτων Συλλογή από θέσεις αποθήκευσης Σε κάθε θέση αποθηκεύεται μία λέξη των n bits n = εύρος λέξης π.χ. n = 8, 16, 32 bits (ή 1, 2, 4 bytes) Σε κάθε θέση αντιστοιχεί μία μοναδική διεύθυνση μη προσημασμένος δυαδικός αριθμός με m bits επιλέγουμε μεταξύ 2 m διευθύνσεων Χώρος διευθύνσεων μνήμης: m - 1 Συνολική χωρητικότητα μνήμης: 2 m x n bits Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 17

153 Μονάδες μέτρησης χωρητικότητας Εισαγωγή ΚΜΕ Μνήμη 1 Byte = 8 bits 1 KiloByte (KB) = 2 10 Bytes Bytes 1 MegaByte (MB) = 2 10 KB = 2 20 Bytes Bytes 1 GigaByte (GB) = 2 10 MB = 2 20 KB = 2 30 bytes Bytes Κλπ Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 18

154 Τεχνολογίες μνημών Εισαγωγή ΚΜΕ Μνήμη Μνήμη τυχαίας προσπέλασης (RAM)( Random Access Memory Ανάγνωση-Εγγραφή Στατική (SRAM) και δυναμική (DRAM) Μέθοδος υλοποίησης κελιών μνήμης Και στις δύο χάνονται τα δεδομένα με τη διακοπή της τροφοδοσίας Μνήμες μόνιμης αποθήκευσης Διατήρηση δεδομένων χωρίς τροφοδοσία Μόνο για ανάγνωση Read Only Memory(ROM), PROM, EPROM, EEPROM.. Αργή ανάγνωση-εγγραφή αλλά μαζική αποθήκευση FLASH Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 19

155 Μοντέλο λειτουργίας μνήμης Εισαγωγή ΚΜΕ Μνήμη Μνήμη Περιεχόμενα Διεύθυνση Αναγν./Εγγρ. Δεδομένα F Διευθύνσεις μνήμης Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 20

156 Ανάγνωση από μνήμη Εισαγωγή ΚΜΕ Μνήμη Μνήμη Περιεχόμενα ΚΜΕ Αναγν F F 00 Διευθύνσεις μνήμης Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 21

157 Εγγραφή στη μνήμη Εισαγωγή ΚΜΕ Μνήμη Μνήμη Περιεχόμενα ΚΜΕ Εγγρ Διευθύνσεις μνήμης Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 22

158 Ιεραρχία Μνήμης Εισαγωγή ΚΜΕ Μνήμη Προσέγγιση της ιδανικής μνήμης Ο επεξεργαστής να βλέπει μνήμη Με την ταχύτητα του υψηλότερου επιπέδου Και το μέγεθος του χαμηλότερου επιπέδου CPU 0,5-5ns $4.000-$10.000/GB 50-70ns $100-$200/GB ns $0,5-$2/GB Κρυφή μνήμη (SRAM) Κύρια μνήμη (DRAM) Μαγνητικοί δίσκοι Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 23

159 Κρυφή μνήμη Εισαγωγή ΚΜΕ Μνήμη Μεταξύ ΚΜΕ και κύριας μνήμης ΚΜΕ κρυφή μνήμη Περιέχει ένα μέρος μόνο των περιεχομένων της κύριας μνήμης Γρηγορότερη από κύρια μνήμη Κύρια Μνήμη Εκμετάλλευση της τοπικότητας των προσπελάσεων Χωρική και χρονική Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 24

160 Παράδειγμα εκτέλεσης εντολών Εισαγωγή ΚΜΕ Μνήμη Παράδειγμα εκτέλεσης εντολών ΚΜΕ PC 70 load 200,R1 R1 R2 R3 70 Αναγν. load 200,R Μνήμη load 200,R1 load 201,R2 add R1,R2,R3 store R3, ALU Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 25

161 Παράδειγμα εκτέλεσης εντολών Εισαγωγή ΚΜΕ Μνήμη Παράδειγμα εκτέλεσης εντολών ΚΜΕ PC 71 load 200,R1 200 Αναγν Μνήμη load 200,R1 load 201,R2 add R1,R2,R3 +14 R1 R2 R store R3, ALU Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 26

162 Παράδειγμα εκτέλεσης εντολών Εισαγωγή ΚΜΕ Μνήμη Παράδειγμα εκτέλεσης εντολών ΚΜΕ PC 71 load 201,R2 +14 R1 R2 R3 71 Αναγν. load 201,R Μνήμη load 200,R1 load 201,R2 add R1,R2,R3 store R3, ALU Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 27

163 Παράδειγμα εκτέλεσης εντολών Εισαγωγή ΚΜΕ Μνήμη Παράδειγμα εκτέλεσης εντολών ΚΜΕ PC 72 load 201,R2 201 Αναγν Μνήμη load 200,R1 load 201,R2 add R1,R2,R R1 R2 R store R3, ALU Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 28

164 Παράδειγμα εκτέλεσης εντολών Εισαγωγή ΚΜΕ Μνήμη Παράδειγμα εκτέλεσης εντολών ΚΜΕ PC 72 add R1,R2,R R1 R2 R3 72 Αναγν. add R1,R2,R Μνήμη load 200,R1 load 201,R2 add R1,R2,R3 store R3, ALU Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 29

165 Παράδειγμα εκτέλεσης εντολών Εισαγωγή ΚΜΕ Μνήμη Παράδειγμα εκτέλεσης εντολών ΚΜΕ PC 73 add R1,R2,R Μνήμη load 200,R1 load 201,R2 add R1,R2,R R1 R2 R store R3, ALU Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 30

166 Παράδειγμα εκτέλεσης εντολών Εισαγωγή ΚΜΕ Μνήμη Παράδειγμα εκτέλεσης εντολών ΚΜΕ PC 73 store R3, R1 R2 R3 73 Αναγν. store R3, Μνήμη load 200,R1 load 201,R2 add R1,R2,R3 store R3, ALU Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 31

167 Παράδειγμα εκτέλεσης εντολών Εισαγωγή ΚΜΕ Μνήμη Παράδειγμα εκτέλεσης εντολών ΚΜΕ PC 74 store R3, Εγγρ Μνήμη load 200,R1 load 201,R2 add R1,R2,R R1 R2 R store R3, ALU Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (Ι) 32

168 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (ΙI) (δίαυλοι και συσκευές εισόδου-εξόδου) Μ.Στεφανιδάκης

169 Στο προηγούμενο μάθημα Εισαγωγή Κεντρική Μονάδα Επεξεργασίας ΚΜΕ CPU ΚΜΕ CPU οθόνη video device ποντίκι, πληκτρολόγιο, εκτυπωτές, σαρωτές... AGP-PCIe έως 2.1GB/s USB έως 480Mbit/s north bridge south bridge έως 266ΜB/s έως 6.4GB/s M-bus (mem bus) έως 3.2GB/s (S)ATA ΜB/s PCI DRAM σκληροί δίσκοι, CD/DVD, δικτυακή σύνδεση, [δισκέτες] [ταινίες] P-bus (host bus, FSB ) Κύρια Μνήμη Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 2

170 Μοντέλο λειτουργίας μνήμης Εισαγωγή Μνήμη Περιεχόμενα Διεύθυνση Αναγν./Εγγρ. Δεδομένα F Διευθύνσεις μνήμης Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 3

171 Διασύνδεση επεξεργαστή-μνήμης Εισαγωγή Δίαυλοι! Δίαυλοι: ομάδες αγωγών διασύνδεση για τη μεταφορά πληροφορίας. Ο ρυθμός μεταφοράς στους διαύλους επηρεάζει τη συνολική απόδοση του υπολογιστή! Διεύθυνση Προς/από πού γίνεται η προσπέλαση; Δεδομένα Έλεγχος Δίαυλος Διευθύνσεων Δίαυλος Δεδομένων ΚΜΕ Δίαυλος Ελέγχου Τα δεδομένα ανάγνωσης/εγγραφής Μνήμη F Ανάγνωση ή εγγραφή; - συγχρονισμός μεταφοράς Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 4

172 Η κύρια μνήμη σήμερα Εισαγωγή Δίαυλοι Υποσύστημα κύριας μνήμης Μεγάλες χωρητικότητες (GBs) Μεγάλο εύρος (bits) διαύλου μεταφοράς Για την ικανοποίηση των αναγκών της ΚΜΕ 64 και πλέον bits ανά μεταφορά Βελτιστοποιήσεις απόδοσης Για τον ελάχιστο χρόνο προσπέλασης δεδομένων 400 ΜTransfers/sec, 3.2 GB/s Ελεγκτής κύριας μνήμης Λόγω πολυπλοκότητας διασύνδεσης ΚΜΕ δεν συνδέεται απευθείας στη μνήμη Αλλά: παρεμβολή ελεγκτή μνήμης Το μοντέλο προσπέλασης δεν αλλάζει Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 5

173 Διασύνδεση επεξεργαστή-μνήμης Εισαγωγή Δίαυλοι Δίαυλος Διευθύνσεων Μνήμη ΚΜΕ Δίαυλος Δεδομένων Ελεγκτής DRAM DRAM Δίαυλος Ελέγχου Σε ένα μοντέρνο υπολογιστικό σύστημα Κύρια μνήμη: σύνθετο υποσύστημα Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 6

174 Είσοδος Έξοδος στον υπολογιστή Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Συσκευές εισόδου-εξόδου (Ε/Ε) Συμβατικά: οτιδήποτε εκτός από ΚΜΕ και μνήμη Συσκευές με τελείως διαφορετικούς μεταξύ τους ρόλους και χαρακτηριστικά Λειτουργία: είσοδος, έξοδος ή και τα δύο (αποθήκευση) Συνεργάτης (στην άλλη άκρη): άνθρωπος ή μηχανή Ρυθμός μεταφοράς δεδομένων Συσκευή πληκτρολόγιο ποντίκι εκτυπωτής σύνδεση δικτύου μαγν. δίσκος οθόνη Λειτουργία είσοδος είσοδος έξοδος είσοδος/έξοδος αποθήκευση έξοδος Ρυθμός (Mbps) 0,0001 0,0038 3, Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 7

175 Ένα τυπικό υπολογιστικό σύστημα σήμερα Εισαγωγή Δίαυλοι Συσκευές Ε/Ε CPU CPU οθόνη έως 6.4GB/s P-bus (host bus, FSB ) video device AGP-PCIe έως 2.1GB/s north bridge M-bus (mem bus) έως 3.2GB/s DRAM ποντίκι, πληκτρολόγιο, εκτυπωτές, σαρωτές... USB έως 480Mbit/s south bridge έως 266ΜB/s (S)ATA ΜB/s PCI Συσκευές και διασύνδεση Ε/Ε σκληροί δίσκοι, CD/DVD, δικτυακή σύνδεση, [δισκέτες] [ταινίες] Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 8

176 Βασικές συσκευές Ε/Ε Εισαγωγή Δίαυλοι Συσκευές Ε/Ε ; Η πληροφορία σε οθόνη διαστάσεων 1280x1024 pixels ανανεώνεται 60 φορές/sec. Αγνοώντας πρόσθετες επιβαρύνσεις, με τι ρυθμό πρέπει να αποστέλλεται η πληροφορία απεικόνισης στην οθόνη; Πληκτρολόγιο Οθόνη Είσοδος από χρήστη κωδικοί πλήκτρων Έξοδος προς χρήστη κωδικοί πλήκτρων Αποθηκευτικά μέσα Μαγνητικοί και οπτικοί δίσκοι Θεωρούνται ως δευτερεύουσα μνήμη Εκατοντάδες χιλιάδες φορές αργότερα από κύρια μνήμη Τα δεδομένα πρέπει πρώτα να περάσουν στην κύρια μνήμη και μετά στην ΚΜΕ Μόνιμη αποθήκευση Και εκτός τροφοδοσίας Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 9

177 Μαγνητικοί δίσκοι Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Αποθήκευση πληροφορίας μαγνητικά στην επιφάνεια των δίσκων Κεφαλές ανάγνωσης-εγγραφής Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 10

178 Δομή μαγνητικών δίσκων Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Οργάνωση σε tracks και sectors Sector = bytes Πληροφορία αναγνώρισης sector Ταχύτητα περιστροφής RPM Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 11

179 Προσπέλαση πληροφορίας στον δίσκο Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Προσπέλαση πληροφορίας Σε τυχαία θέση (sector) του δίσκου Μετάβαση κεφαλής στο επιθυμητό track Seek time Αναμονή για εμφάνιση του επιθυμητού sector κάτω από την κεφαλή Rotational latency Ανάγνωση και μεταφορά των δεδομένων του sector (Block) transfer time Όλες οι κεφαλές κινούνται μαζί όχι ανεξάρτητα! Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 12

180 Οπτικοί δίσκοι (CD-ROM) Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Κοιλάδα Πεδιάδα i Ταχύτητα CD- ROM: 1x = 150KB/sec, 2x = 300KB/sec, κλπ Ανάγνωση: Εντοπιστής laser Διαφορετική ανάκλαση σε πεδιάδες και κοιλάδες Ανάκτηση του bit Πηγή laser Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 13

181 Κωδικοποίηση δεδομένων σε CD-ROM Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Κάθε byte μετατρέπεται σε ένα σύμβολο των 14 bits Πρόσθετη πληροφορία για διόρθωση λαθών 6 bits κώδικας Hamming Ένα πλαίσιο (frame) αποτελείται από 24 σύμβολα Ένας τομέας (sector) περιέχει 98 πλαίσια Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 14

182 CD-R και CD-RW Εισαγωγή Δίαυλοι Συσκευές Ε/Ε CD-R CD-RW DVD- Γράφονται μία φορά Προσομοίωση κοιλάδων και πεδιάδων Με την αλλοίωση επιφάνειας χρωστικής ουσίας Με laser υψηλής ισχύος Επανεγγράψιμοι δίσκοι Κράμα 2 καταστάσεων: κρυσταλλική και άμορφη Προσομοίωση κοιλάδων και πεδιάδων Μεταπήδηση μεταξύ των δύο καταστάσεων με ακτίνα laser διαφορετικής ισχύος Διαφορετικές διαστάσεις κοιλάδων και tracks, laser διαφορετικού μήκους κύματος Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 15

183 Διασύνδεση συσκευών Ε/Ε Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Διασύνδεση Ε/Ε ΚΜΕ ελεγκτής Ε/Ε μνήμη δίαυλος συστήματος (διεύθυνση, δεδομένα, έλεγχος) συσκευή Ε/Ε Διασύνδεση στον δίαυλο του συστήματος μέσω ενός ελεγκτή Ε/Ε (I/O controller ή adapter) Ο ελεγκτής αναλαμβάνει την επικοινωνία με την πολύ αργότερη συσκευή Ε/Ε Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 16

184 Επικοινωνία συσκευών-ελεγκτή Ε/Ε Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Διασύνδεση Ε/Ε Πρωτόκολλο επικοινωνίας ανάλογο της φύσης της συσκευής Χαρακτήρες για πληκτρολόγιο-εκτυπωτή Πληροφορία χρώματος για οθόνη Πακέτα δεδομένων για το δίκτυο Μεταφορά μπλοκ δεδομένων για δίσκους Ο ελεγκτής Ε/Ε αναλαμβάνει να μεταφράσει από/προς αιτήσεις ανάγνωσηςεγγραφής της ΚΜΕ Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 17

185 Περιφερειακοί δίαυλοι Ε/Ε Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Διασύνδεση Ε/Ε i Η τοπολογία κάθε περιφερειακού διαύλου μπορεί να είναι τελείως διαφορετική Όταν η σύνδεση ελεγκτή και συσκευών Ε/Ε γενικεύεται ΚΜΕ ελεγκτής Ε/Ε Δίσκοι, CD-ROM: (S)ATA (AT-Attachment), SCSI (Small Computer System Interface) Εξωτερικές συσκευές: μνήμη USB (Universal Serial Bus), Firewire Περιφερειακός δίαυλος Ε/Ε συσκευή Ε/Ε συσκευή Ε/Ε συσκευή Ε/Ε Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 18

186 Χώροι διευθύνσεων για Ε/Ε Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Διασύνδεση Ε/Ε store load χώρος διευθύνσεων συστήματος διευθύνσεις μνήμης διευθύνσεις ελεγκτή Ε/Ε διευθύνσεις ελεγκτή Ε/Ε memory-mapped I/O Αντιστοιχισμένη σε μνήμη Ε/Ε (memory mapped I/O access) ΚΜΕ read read 100 ελεγκτής Ε/Ε συσκευή Ε/Ε μνήμη Διευθύνσεις Ε/Ε στον χώρο μνήμης Κοινές εντολές προσπέλασης μνήμης (π.χ. read, write) Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 19

187 Χώροι διευθύνσεων για Ε/Ε Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Διασύνδεση Ε/Ε load store χώρος διευθύνσεων μνήμης διευθύνσεις μνήμης ΚΜΕ in 100 read 100 ελεγκτής Ε/Ε μνήμη in out χώρος διευθύνσεων E/E διευθύνσεις ελεγκτή Ε/Ε διευθύνσεις ελεγκτή Ε/Ε isolated I/O Απομονωμένη Ε/Ε (isolated I/O access) συσκευή Ε/Ε Διαφορετικές εντολές για προσπέλαση μνήμης και Ε/Ε Ίδια διεύθυνση = διαφορετική θέση σε μνήμη και Ε/Ε Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 20

188 Εξυπηρέτηση αιτήσεων Ε/Ε Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Διασύνδεση Ε/Ε Αιτήσεις Ε/Ε Ολοκλήρωση αιτήσεων Ε/Ε Υπερβολικά αργή λειτουργία σε σχέση με την ταχύτητα της ΚΜΕ Η ΚΜΕ πρέπει να περιμένει! Πώς γίνεται αντιληπτή η ολοκλήρωση της εξυπηρέτησης Ε/Ε; Μεταφορά δεδομένων από/προς συσκευές Ε/Ε Ποιος αναλαμβάνει τη μεταφορά των δεδομένων προς/από την κύρια μνήμη; Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 21

189 Ανίχνευση ολοκλήρωσης αίτησης Ε/Ε Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Διασύνδεση Ε/Ε Αιτήσεις Ε/Ε ΚΜΕ ανάγνωση καταχωρητή κατάστασης while (!status) { // αναμονή ελεγκτής Ε/Ε status } // επόμενη λειτουργία συσκευή Ε/Ε Περιοδική ανάγνωση καταχωρητή κατάστασης Ολοκληρώθηκε η τρέχουσα αίτηση; Εμφανίστηκε κάποια αλλαγή κατάστασης στη συσκευή Ε/Ε; Επαναληπτική διαδικασία (polling) Επιβάρυνση ΚΜΕ με άσκοπους κύκλους εκτέλεσης για μεγάλο διάστημα η κατάσταση θα παραμένει σταθερή περιμένοντας τη συσκευή Ε/Ε Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 22

190 Ανίχνευση ολοκλήρωσης αίτησης Ε/Ε Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Διασύνδεση Ε/Ε Αιτήσεις Ε/Ε JobA() { ΑίτησηΕ/Ε(); <εκτέλεση άλλης διεργασίας> } ISR() { <επιστροφή στο joba> } ΚΜΕ Ασύγχρονη ειδοποίηση ΚΜΕ ελεγκτής Ε/Ε intr συσκευή Ε/Ε Ασύγχρονη ειδοποίηση ΚΜΕ (interrupts)( Ο ελεγκτής ειδοποιεί την ΚΜΕ για αλλαγή κατάστασης της συσκευής Ε/Ε Στο μεταξύ η ΚΜΕ μπορεί να εκτελεί άλλη διεργασία Η διακοπή θα προκαλέσει την εκτέλεση ρουτίνας εξυπηρέτησης διακοπής (interrupt service routine ISR) Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 23

191 Μετακίνηση δεδομένων από/προς μνήμη Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Διασύνδεση Ε/Ε Αιτήσεις Ε/Ε ανάγνωση bytes ΚΜΕ ελεγκτής Ε/Ε μνήμη εγγραφή bytes δίαυλος συστήματος συσκευή Ε/Ε Μετά από διακοπή ή polling ελεγκτή Ε/Ε Η ΚΜΕ επαναληπτικά διαβάζει δεδομένα από τον ελεγκτή Ε/Ε και τα γράφει στη μνήμη και το αντίστροφο Σημαντική επιβάρυνση της ΚΜΕ! Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 24

192 Direct Memory Access (DMA) Εισαγωγή Δίαυλοι Συσκευές Ε/Ε Διασύνδεση Ε/Ε Αιτήσεις Ε/Ε Καθορισμός διεύθυνσης μνήμης και μήκους δεδομένων ΚΜΕ (αρχικά) ελεγκτής Ε/Ε μνήμη εγγραφή bytes δίαυλος συστήματος συσκευή Ε/Ε Η ΚΜΕ απλά θέτει τις παραμέτρους της μεταφοράς Διευθύνσεις πηγής-προορισμού, μέγεθος δεδομένων Ο ελεγκτής διεκδικεί τον δίαυλο του συστήματος και μεταφέρει δεδομένα απευθείας προς/από τη μνήμη Η ΚΜΕ μπορεί να εκτελεί άλλη διεργασία Σύγκρουση στη χρήση μνήμης, αλλά ή ΚΜΕ έχει και την κρυφή μνήμη! Εισαγωγή στην Επιστήμη των Υπολογιστών Οργάνωση Υπολογιστών (IΙ) 25

193 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα υπολογιστών (και το Διαδίκτυο) Μ.Στεφανιδάκης

194 Τι είναι ένα δίκτυο υπολογιστών; Εισαγωγή Διασύνδεση υπολογιστικών συστημάτων Μέσο διασύνδεσης Ενσύρματο ή ασύρματο Ανταλλαγή δεδομένων Και μετάδοση εντολών Γεφύρωση γεωγραφικών περιοχών Μικρού (τοπικού), μεσαίου και μεγάλου μεγέθους Καθορισμένοι κανόνες επικοινωνίας Καθορισμένοι κανόνες επικοινωνίας Πρωτόκολλα Ανεξάρτητα από το είδος (αρχιτεκτονική) του υπολογιστή Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 2

195 Δικτυακά πρωτόκολλα Εισαγωγή Πρωτόκολλα Κανόνες επικοινωνίας για την ανταλλαγή μηνυμάτων δεδομένων μεταξύ δύο (δια)δικτυακών εφαρμογών Ένα δικτυακό πρωτόκολλο καθορίζει: Το μορφότυπο (format) των ανταλλασσόμενων μηνυμάτων Τη σειρά (αλληλουχία) των μηνυμάτων Τις απαιτούμενες ενέργειες κατά την αποστολή ή παραλαβή των μηνυμάτων Υλοποίηση πρωτοκόλλων Σε υλικό ή/και λογισμικό Το Διαδίκτυο στηρίζεται σε μεγάλο βαθμό σε πρωτόκολλα! Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 3

196 Αρχιτεκτονική επιπέδων πρωτοκόλλων Εισαγωγή Πρωτόκολλα επίπεδο n... επίπεδο 3 επίπεδο 2 παρέχει υπηρεσίες προς το ανώτερο επίπεδο χρησιμοποιεί τις υπηρεσίες των κατώτερων επιπέδων Δομημένη αρχιτεκτονική επίπεδο 1 Διευκολύνει τον σχεδιασμό, μειώνει πολυπλοκότητα Επιτρέπει την απρόσκοπτη εξέλιξη των πρωτοκόλλων Επιτρέπει τη χρήση εναλλακτικών τεχνολογιών Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 4

197 Το μοντέλο OSI Εισαγωγή Πρωτόκολλα Open System Interconnection Θεωρητικό μοντέλο Παρέχει το πλαίσιο υλοποίησης των πρωτοκόλλων κάθε δικτύου Κάποια δίκτυα δεν το υλοποιούν πιστά Μετάδοση δεδομένων Μέσω των 7 επιπέδων του μοντέλου Εφαρμογές Επίπεδα 5 έως 7 Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 5

198 Τα επίπεδα του μοντέλου OSI Εισαγωγή Πρωτόκολλα Εφαρμογής (Application L7) Παρουσίασης (Presentation L6) Συνεδρίας (Session L5) Μεταφοράς (Transport - L4) Δικτύου (Network - L3) Συνδέσμου δεδομένων (Data link - L2) Φυσικό ( Physical - L1) Λειτουργίες σχετικές με την εκάστοτε εφαρμογή Μετατροπές αναπαράστασης δεδομένων, κωδικοποίηση, συμπίεση.. Συγχρονισμός μεταξύ εφαρμογών. Έναρξη, διαχείριση και τερματισμός συνομιλίας μεταξύ εφαρμογών Διαφανής μεταφορά δεδομένων μεταξύ εφαρμογών, με έλεγχο ροής Μεταφέρει δεδομένα από τον αποστολέα στον παραλήπτη, μέσω ενδιάμεσων κόμβων Μεταφέρει δεδομένα από κόμβο σε κόμβο, κωδικοποίηση σε σειρές bits για πρόσβαση στο φυσικό μέσο (L1) Φυσικό μέσο μετάδοσης δεδομένων Μεταφέρει ομάδες bits ηλεκτρικά, οπτικά ή ασύρματα Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 6

199 Διάσχιση επιπέδων αποστολή Εισαγωγή Πρωτόκολλα τα δεδομένα προς αποστολή εισάγονται στο υψηλότερο επίπεδο επίπεδο n Ln δεδομένα... επίπεδο 3 L3 Ln δεδομένα επίπεδο 2 L2 L3 Ln δεδομένα Προσθήκη επικεφαλίδων (headers)( επίπεδο 1 φυσικό μέσο Σε κάθε επίπεδο πρόσθετη πληροφορία Η πληροφορία του προηγούμενου επιπέδου ενθυλακώνεται στο πακέτο του επόμενου (encapsulation) αποστολή Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 7

200 Διάσχιση επιπέδων λήψη Εισαγωγή Πρωτόκολλα τα δεδομένα εξάγονται από τη στοίβα των επιπέδων στην αρχική τους μορφή Ln δεδομένα επίπεδο n... L3 Ln δεδομένα επίπεδο 3 L2 L3 Ln δεδομένα επίπεδο 2 λήψη φυσικό μέσο επίπεδο 1 Ανασυναρμολόγηση αρχικής πληροφορίας Κατά τη διάσχιση των επιπέδων πρωτοκόλλων στη λήψη από το χαμηλότερο προς το υψηλότερο επίπεδο Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 8

201 Κατηγορίες δικτύων Εισαγωγή Πρωτόκολλα Είδη Δικτύων Τοπικά Δίκτυα Local Area Networks (LANs) Μητροπολιτικά Δίκτυα Metropolitan Area Networks (MANs) Δίκτυα Ευρείας Περιοχής Wide Area Networks (WANs) Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 9

202 Τοπικά Δίκτυα (LANs) Εισαγωγή Πρωτόκολλα Είδη Δικτύων Τοπολογία Διαύλου Διασύνδεση υπολογιστών στον ίδιο χώρο γραφείο, κτήριο.. Τοπολογία Αστέρα Η τοπολογία αστέρα έχει επικρατήσει Τοπολογία Δακτυλίου Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 10

203 Μητροπολιτικά Δίκτυα (MANs) Εισαγωγή Πρωτόκολλα Είδη Δικτύων επικοινωνιακό δίκτυο πόλης Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 11

204 Δίκτυα Ευρείας Περιοχής (WANs) Εισαγωγή Πρωτόκολλα Είδη Δικτύων Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 12

205 Συσκευές Διασύνδεσης Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Συσκευές δικτύωσης Επαναλήπτες (repeaters) Γέφυρες (bridges) Συσκευές διαδικτύωσης Δρομολογητές (routers) Πύλες (gates) Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 13

206 Συσκευές διασύνδεσης και το μοντέλο OSI Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Εφαρμογής Παρουσίασης «πύλες» Συνεδρίας Μεταφοράς Δικτύου δρομολογητές Συνδ. Δεδομ. γέφυρες Φυσικό επαναλήπτες Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 14

207 Επαναλήπτες (repeaters) Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Στο 1ο επίπεδο OSI Ηλεκτρική αναδημιουργία σήματος Τοπολογία διαύλου Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 15

208 Επαναλήπτες (repeaters) Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Στο 1ο και 2ο επίπεδο OSI Ρύθμιση κυκλοφορίας ανάλογα με φυσική διεύθυνση προορισμού Ηλεκτρική αναδημιουργία σήματος Τοπολογία διαύλου Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 16

209 Μεταγωγείς (switches) Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Έξυπνη παραλλαγή της γέφυρας Τοπολογία αστέρα Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 17

210 Δρομολογητές (routers) Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Διαδικτύωση Στα επίπεδα 1, 2 και 3 του OSI Δρομολόγηση μέσω λογικής διεύθυνσης Δρομολογητές (routers) first-hop router τερματικός κόμβος Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 18

211 Το Διαδίκτυο Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Το Διαδίκτυο Διασύνδεση εκατομμυρίων υπολογιστών Μόνιμη ή προσωρινή Μέσω διαφόρων φυσικών μέσων Πρωτόκολλα TCP/IP Επίπεδα OSI: Δικτύου (3) και Μεταφοράς (4) Πληροφορία χωρίζεται σε πολλαπλά πακέτα Δρομολόγηση μέσω πολλαπλών κόμβων Ethernet Κύριο φυσικό μέσο σε τοπικά δίκτυα 10Mbps, 100Mbps, 1000Mbps Επίπεδα OSI Φυσικό (1) και Συνδέσμου Δεδομένων (2) Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 19

212 Το Διαδίκτυο και το μοντέλο OSI Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Το Διαδίκτυο Διάφορα πρωτόκολλα προσπέλασης φυσικών μέσων Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 20

213 Internet Protocol (IP) Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Το Διαδίκτυο Στο επίπεδο 3 (Δικτύου) του OSI Αυτοδύναμα πακέτα δεδομένων IP datagrams Δρομολόγηση μέσω διαφορετικών κόμβων Διεύθυνση IP 4 bytes Συμβολισμός: A.B.C.D Π.χ Πρέπει να είναι μοναδική στο Διαδίκτυο Ανάθεση από διεθνείς οργανισμούς Δυναμική ή στατική ανάθεση Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 21

214 Transmission Control Protocol (TCP) Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Το Διαδίκτυο Στο επίπεδο 4 (Μεταφοράς) του OSI Αξιόπιστη μεταφορά Καταμερισμός πληροφορίας σε IP πακέτα Αρίθμηση πακέτων Έλεγχος μετάδοσης-παραλαβής πακέτων Ταξινόμηση λαμβανόμενων πακέτων Παρακολούθηση χρόνων άφιξης πακέτων Αίτηση αναμετάδοσης σε περίπτωση απώλειας Συναρμολόγηση τελικής πληροφορίας Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 22

215 Το μοντέλο επικοινωνίας client-server Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Το Διαδίκτυο Π.χ. client είναι ο προσωπικός μας υπολογιστής και server ένα απομακρυσμένο σύστημα που παρέχει διάφορες υπηρεσίες (όπως το ) Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 23

216 Διακίνηση ηλεκτρονικού ταχυδρομείου Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Το Διαδίκτυο Προσωπικός Υπολογιστής Post Office Protocol (POP) για παραλαβή Simple Mail Transfer Protocol (SMTP) για αποστολή/διακίνηση Πρόγραμμα διαχείρισης Διακομιστής Διευθύνσεις SMTP Client POP Client POP Server SMTP Server (π.χ. Διαδίκτυο Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 24

217 HyperText Transfer Protocol (HTTP) Εισαγωγή Πρωτόκολλα Είδη Δικτύων Συσκευές Το Διαδίκτυο Για την προσπέλαση και μεταφορά εγγράφων web μεταξύ client-server μεταφορά κειμένου, εικόνας, ήχου, βίντεο κλπ Τα επιστρεφόμενα αντικείμενα ή είναι στατικά αποθηκευμένα στον server ή δημιουργούνται δυναμικά με την εκτέλεση κάποιου προγράμματος (στον server) Αίτηση (client) Απόκριση (server) URL (Uniform Resource Locator) Πού βρίσκεται το αντικείμενο που θέλουμε; πρωτόκολλο :// server [:port] / μονοπάτι Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα Υπολογιστών 25

218 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο Μ.Στεφανιδάκης

219 Το Διαδίκτυο Το Διαδίκτυο Διασύνδεση εκατομμυρίων υπολογιστών Μόνιμη ή προσωρινή Μέσω διαφόρων φυσικών μέσων Πρωτόκολλα TCP/IP Επίπεδο Δικτύου (L3) Επίπεδο Μεταφοράς (L4) Πληροφορία χωρίζεται σε αυτοδύναμα πακέτα Δρομολόγηση μέσω πολλαπλών κόμβων Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 2

220 Στις παρυφές του διαδικτύου Το Διαδίκτυο Server PC Πυρήνας Διαδικτύου Laptop Τερματικοί κόμβοι (endnodes( ή hosts) Στα άκρα του Διαδικτύου Διασύνδεση διαφόρων συσκευών Όχι μόνο κλασσικοί υπολογιστές PCs, servers, ενσωματωμένες συσκευές Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 3

221 Ο αριθμός των τερματικών κόμβων σήμερα Το Διαδίκτυο Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 4

222 Ο πυρήνας του Διαδικτύου Το Διαδίκτυο Δρομολογητής (ή διαδρομιστής) Router Ιεραρχική διασύνδεση δικτύων Όχι υποχρεωτικά με δενδρική δομή Σε επίπεδο εταιρίας, χώρας, και παγκοσμίως Επιλογή επόμενου κόμβου και προώθηση πακέτων Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 5

223 Διαδίκτυο και επίπεδα πρωτοκόλλων Το Διαδίκτυο διαδικτυακή εφαρμογή λειτουργικό σύστημα υλικό Εφαρμογής (Application) Μεταφοράς (TCP) (Transport - L4) Δικτύου (ΙP) (Network - L3) Συνδέσμου δεδομένων (Data link - L2) Φυσικό ( Physical - L1) Το πλήρες σύνολο της δικτυακής στοίβας (netstack)( υλοποιείται στους τερματικούς κόμβους Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 6

224 Internet Protocol (IP) Το Διαδίκτυο Στο επίπεδο 3 (Δικτύου) του OSI Αυτοδύναμα πακέτα δεδομένων IP datagrams Δρομολόγηση μέσω διαφορετικών κόμβων Διεύθυνση IP 4 bytes Συμβολισμός: A.B.C.D Π.χ Πρέπει να είναι μοναδική στο Διαδίκτυο Ανάθεση από διεθνείς οργανισμούς Δυναμική ή στατική ανάθεση Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 7

225 Transmission Control Protocol (TCP) Το Διαδίκτυο Στο επίπεδο 4 (Μεταφοράς) του OSI Αξιόπιστη μεταφορά Καταμερισμός πληροφορίας σε IP πακέτα Αρίθμηση πακέτων Έλεγχος μετάδοσης-παραλαβής πακέτων Ταξινόμηση λαμβανόμενων πακέτων Παρακολούθηση χρόνων άφιξης πακέτων Αίτηση αναμετάδοσης σε περίπτωση απώλειας Συναρμολόγηση τελικής πληροφορίας Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 8

226 Διάσχιση επιπέδων Διαδικτύου Server PC switch Διαδίκτυο Εφαρμογή Εφαρμογή TCP/UDP TCP/UDP IP IP IP IP Συνδ. Δεδομ. Συνδ. Δεδομ. Συνδ. Δεδομ. Συνδ. Δεδομ. Συνδ. Δεδομ. Φυσικό Φυσικό Φυσικό Φυσικό Φυσικό Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 9

227 Οι διαδικτυακές εφαρμογές Το Διαδίκτυο Εφαρμογές Κατανεμημένες εφαρμογές Σε διασυνδεδεμένους υπολογιστές Επικοινωνία μέσω Διαδικτύου Για την παροχή υπηρεσιών (services) προς Τον άνθρωπο Web, κλπ Άλλους υπολογιστές Web services Εκμετάλλευση κατανεμημένων πόρων Υπολογιστικοί πόροι Πόροι μνήμης και δίσκων Αποθηκευμένης πληροφορίας (digital libraries) Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 10

228 Το μοντέλο client-server Το Διαδίκτυο Εφαρμογές PC αίτηση Server απόκριση Laptop αίτηση απόκριση Το παραδοσιακό μοντέλο πελάτη-εξυπηρετητή Οι κλασσικές εφαρμογές του Διαδικτύου Web, , μεταφορές αρχείων, απομακρυσμένη πρόσβαση, κλπ Ο πελάτης (client) στέλνει μια αίτηση (request) για εξυπηρέτηση στον εξυπηρετητή (server). Ο τελευταίος εκτελεί τη ζητούμενη λειτουργία και στέλνει μια απόκριση (response) δεδομένων. Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 11

229 Εναλλακτικό μοντέλο P2P Το Διαδίκτυο Εφαρμογές PC αίτηση Server απόκριση αίτηση απόκριση Laptop αίτηση απόκριση Το νεώτερο μοντέλο peer-to-peer (P2P) Όλοι οι κόμβοι μπορούν να δράσουν ως clients ή/και ως servers Ανάλογα με τις δυνατότητές τους Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 12

230 Κατηγορίες εφαρμογών client-server Το Διαδίκτυο Εφαρμογές Γενικός στόχος client-server εφαρμογών: η προσπέλαση απομακρυσμένων πόρων Μεταφορά αντικειμένων (αρχείων) Εκτέλεση λειτουργιών Οι πρώτες (δια)δικτυακές εφαρμογές Απομακρυσμένη πρόσβαση χρήστη (remote login) σε υπολογιστικά συστήματα....και άμεση εκτέλεση εντολών Η νεώτερη κατηγορία εφαρμογών Αίτηση και λήψη αντικειμένων (αρχείων) Αίτηση εκτέλεσης λειτουργιών και λήψη αποτελεσμάτων Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 13

231 Απομακρυσμένη πρόσβαση Το Διαδίκτυο Εφαρμογές Εφαρμογή Εφαρμογή Εφαρμογή mainframe Λειτουργικό Σύστημα IBM getty getty getty remote login server εφαρμ. tty tty tty modem Διαδίκτυο remote login client εφαρμ. τερματικό modem Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 14

232 Εφαρμογές για αίτηση και απόκτηση πόρων Το Διαδίκτυο Εφαρμογές Διαφορετική κατηγορία client-server εφαρμογών Αίτηση και λήψη αντικειμένων (αρχείων) Αίτηση εκτέλεσης λειτουργιών και λήψη αποτελεσμάτων Χωρίς να συνδεθεί ο χρήστης σε ένα απομακρυσμένο εικονικό τερματικό Δεν είναι απαραίτητο πάντοτε ο χρήστης να έχει λογαριασμό στο σύστημα server Client εφαρμογή Στέλνει αιτήσεις (εντολές) συνήθως σε 7-bit ASCII Παρέχει πληροφορία του χρήστη προς τον server Server εφαρμογή Απαντά σε αιτήσεις επιστρέφοντας δεδομένα Παρέχει πληροφορία ολοκλήρωσης της αίτησης Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 15

233 Ο παγκόσμιος ιστός (Web) Το Διαδίκτυο Εφαρμογές Web World Wide Web (www) Διακίνηση ιστοσελίδων Και πολλών άλλων μορφών δεδομένων Η εφαρμογή που ανέδειξε το Διαδίκτυο Σήμερα βάση για πολλές άλλες εφαρμογές (εφαρμογές web) Τα βασικά τμήματα (εφαρμογές, γλώσσες και πρωτόκολλα) που συγκροτούν το Web σχεδιάστηκαν στις αρχές του 90 Πριν την εμφάνιση του Web Ftp News Telnet Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 16

234 Τα τμήματα που συγκροτούν το Web Το Διαδίκτυο Εφαρμογές Web Εφαρμογή web client (browser) Παρουσιάζει στον χρήστη τα δεδομένα που λαμβάνει από τον web server Εφαρμογή web server Εξυπηρετεί τις αιτήσεις των web clients, επιστρέφοντας τα αντικείμενα (ιστοσελίδες και άλλα αρχεία) που ζητούν Γλώσσα HTML Περιεχόμενο και μορφή ιστοσελίδων Πρωτόκολλο HTTP Για τη μεταφορά δεδομένων μεταξύ web server και web client Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 17

235 HyperText Markup Language (HTML) Το Διαδίκτυο Εφαρμογές Web Τι είναι η γλώσσα HTML; Μια γλώσσα για τη συγκρότηση εγγράφων web με πρόσθετες οδηγίες (markup) σχετικά με τη δομή και την παρουσίασή τους Ποιες οι δυνατότητες της HTML; [W3C] Επίσης Εμφάνιση κειμένου, επικεφαλίδων, τίτλων, εικόνων, λιστών, πινάκων κλπ. Σύνδεση με άλλους πόρους μέσω υπερσυνδέσμων Χρήση φορμών γιατη μετάδοση των δεδομένων χρήστη Ενσωμάτωση ήχου, εικόνας και άλλων εφαρμογών μέσα στα έγγραφα web Ξεχωριστές πληροφορίες παρουσίασης (stylesheets) Ενσωμάτωση προγραμμάτων (scripts) Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 18

236 HyperText Transfer Protocol (HTTP) Το Διαδίκτυο Εφαρμογές Web Για την προσπέλαση και μεταφορά εγγράφων web μεταξύ client-server μεταφορά κειμένου, εικόνας, ήχου, βίντεο κλπ Τα επιστρεφόμενα αντικείμενα ή είναι στατικά αποθηκευμένα στον server ή δημιουργούνται δυναμικά με την εκτέλεση κάποιου προγράμματος (στον server) Αίτηση (client) Απόκριση (server) URL (Uniform Resource Locator) Πού βρίσκεται το αντικείμενο που θέλουμε; πρωτόκολλο :// server [:port] / μονοπάτι Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 19

237 Ηλεκτρονικό Ταχυδρομείο ( ) Το Διαδίκτυο Εφαρμογές Web Η πρώτη επιτυχημένη δικτυακή εφαρμογή Πολύ πριν την ανάπτυξη του διαδικτύου! Ασύγχρονη εφαρμογή Δεν απαιτείται ο χρήστης να είναι συνεχώς on-line για να λάβει e- mail Όμως κάποιος υπολογιστής πρέπει να είναι on-line συνεχώς Παλαιά πρωτόκολλα Αρχικά για τη μεταφορά μηνυμάτων σε 7-bit ASCII Αναγκαία ειδική κωδικοποίηση για μεταφορά δυαδικών δεδομένων (π.χ. multimedia) Το μήνυμα και όλα τα συνημμένα αντικείμενα μεταφέρονται ως ένα ενιαίο πακέτο δεδομένων Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 20

238 Τμήματα της εφαρμογής Το Διαδίκτυο Εφαρμογές Web Εφαρμογή χρήστη (mail( user agent MUA) Για τη σύνθεση-αποστολή και λήψη-απεικόνιση Εφαρμογή mail server (συνεχώς( on-line) Για την προώθηση των εξερχόμενων μηνυμάτων Και την παραλαβή-αποθήκευση των εισερχόμενων Πρωτόκολλο προώθησης μηνυμάτων Από τον mail server του αποστολέα στον mail server του παραλήπτη Πρωτόκολλο λήψης εισερχόμενων μηνυμάτων Από την εφαρμογή MUA του χρήστη Πρωτόκολλο μορφής μηνυμάτων Το μορφότυπο (format) των μεταδιδόμενων μηνυμάτων Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 21

239 Μεταφορά Το Διαδίκτυο Εφαρμογές Web υπολογιστής παραλήπτη Έχω ? Αν ναι, λήψη MUA To: Mail server αποστολέα Προς Mail server παραλήπτη υπολογιστής αποστολέα Προς Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 22

240 Εφαρμογές Webmail Το Διαδίκτυο Εφαρμογές Web Mail server αποστολής Mail server παραλήπτη Web Browser Web server HTTP υπολογιστής αποστολέα Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 23

241 Domain Name System (DNS) Το Διαδίκτυο Εφαρμογές Web DNS Η υπηρεσία καταλόγου του Διαδικτύου Μετάφραση μνημονικών ονομάτων (domain names) σε διευθύνσεις IP Και το αντίστροφο Π.χ Ένας μηχανισμός μετάφρασης εύρεσης της αντιστοιχίας μεταξύ των δύο μορφών διεύθυνσης Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 24

242 Τμήματα της εφαρμογής DNS Το Διαδίκτυο Εφαρμογές Web DNS Βάση (ή βάσεις) δεδομένων Με τις αντιστοιχίες domain names διευθύνσεων IP DNS servers Δέχονται ερωτήσεις και απαντούν με αντιστοιχίες ονομάτων διευθύνσεων IP Πρωτόκολλο DNS Καθορίζει τη μορφή των αιτήσεων και απαντήσεων Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 25

243 Η ιεραρχία των DNS servers Το Διαδίκτυο Εφαρμογές Web DNS TLD servers (π.χ..org,.com..) Root servers (13 παγκοσμίως, Α-Μ) Authoritative servers (π.χ. ανά οργανισμό) Authority zone Επίσης: τοπικοί DNS servers Εισαγωγή στην Επιστήμη των Υπολογιστών Εφαρμογές στο Διαδίκτυο 26

244 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα (Operating Systems) Μ.Στεφανιδάκης

245 Τι είναι ένα λειτουργικό σύστημα; Εισαγωγή Λογισμικό ο γενικός επιβλέπων ενός υπολογιστικού συστήματος Εκτέλεση προγραμμάτων εφαρμογών Διαχείριση υπολογιστικών πόρων ΚΜΕ Μνήμη Συσκευές Ε/Ε Ενδιάμεσο μεταξύ χρήστη και υπολογιστή Κοινές-συχνά χρησιμοποιούμενες λειτουργίες εφαρμογών Βιβλιοθήκες λειτουργικού συστήματος Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 2

246 Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή Εισαγωγή υπολογιστικό σύστημα υλικό λογισμικό λειτουργικό σύστημα προγράμματα εφαρμογών Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 3

247 Μια άλλη απεικόνιση Εισαγωγή Εφαρμογές Υλικό Λειτ.Σύστημα Κέλυφος (shell) Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 4

248 Η εξέλιξη των Λειτουργικών Συστημάτων Εισαγωγή Ανάλογα με την εξέλιξη των υπολογιστών: Τα πρώτα μεγάλα συστήματα (mainframes) Λ.Σ. δέσμης (batch operating systems) Συστήματα με πολυπρογραμματισμό (multiprogramming) Λ.Σ. με δυνατότητες χρονοπρογραμματισμού Προσωπικοί Υπολογιστές Παράλληλα συστήματα (πολλές ΚΜΕ) Σύνθετα Λ.Σ. για κατανομή εργασίας Κατανεμημένα συστήματα (μέσω δικτύου- internet) Λ.Σ. ενός χρήστη (single user operating system) Λ.Σ. με πρόσθετες ικανότητες (συντονισμός, μηνύματα, ασφάλεια δεδομένων..) Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 5

249 Διαχείριση πόρων Εισαγωγή Λειτουργικό σύστημα Επικοινωνία με χρήστη Διαχείριση Μνήμης Διαχείριση ΚΜΕ Διαχείριση Συσκευών Διαχείριση Αρχείων Η επικοινωνία με τον χρήστη είναι μέρος του Λ.Σ; Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 6

250 Μονοπρογραμματισμός Εισαγωγή Διαχείριση μνήμης Τα πρώτα χρόνια των υπολογιστών... Στην μνήμη βρίσκονται Ένα πρόγραμμα Το λειτουργικό σύστημα Απλή διαχείριση μνήμης Αν το μέγεθος του προγράμματος είναι μεγάλο; Πότε μπορεί να εκτελεστεί άλλο πρόγραμμα; Λειτουργικό Σύστημα Πρόγραμμα: κώδικας και δεδομένα μνήμη Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 7

251 Πολυπρογραμματισμός Εισαγωγή Διαχείριση μνήμης Πολλά προγράμματα στη μνήμη Ταυτόχρονη εκτέλεση Στην πραγματικότητα διαδοχική εκτέλεση εντολών από κάθε πρόγραμμα Φαινομενικά τα προγράμματα εκτελούνται παράλληλα Οι υπολογιστικοί πόροι πρέπει να μοιράζονται μεταξύ των προγραμμάτων Διαιτησία Ρόλος του Λειτουργικού Συστήματος! Λειτουργικό Σύστημα Πρόγραμμα1 Πρόγραμμα2 Πρόγραμμα3 Πρόγραμμα4 μνήμη Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 8

252 Πολυπρογραμματισμός (συνέχεια) Εισαγωγή Διαχείριση μνήμης To Λειτουργικό Σύστημα διατηρεί πληροφορία για κάθε εκτελούμενο πρόγραμμα (διεργασία) Process Control Block (PCB) ή Task Control Block (TCB) Όταν διακόπτεται η εκτέλεση: Αποθήκευση τιμής program counter (PC) Τρέχουσα διεύθυνση εκτελούμενης εντολής Αποθήκευση τιμών καταχωρητών Όταν ξεκινά πάλι η εκτέλεση: Αποκατάσταση αποθηκευμένων τιμών Το πρόγραμμα συνεχίζει την εκτέλεση από το σημείο που διακόπηκε Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 9

253 Τεχνικές διαχείρισης μνήμης Εισαγωγή Διαχείριση μνήμης Πώς θα εξασφαλιστεί η διαθεσιμότητα της μνήμης για τα προγράμματα που εκτελούνται ταυτόχρονα Χωρίς εναλλαγή (swapping)( Το πρόγραμμα παραμένει στη μνήμη Διαμέριση - Σελιδοποίηση Με εναλλαγή Μέρος του προγράμματος μπορεί να εναλλάσσει θέση μεταξύ μνήμης και δίσκου κατά την εκτέλεση Σελιδοποίηση κατ απαίτηση Κατάτμηση κατ απαίτηση Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 10

254 Διαμέριση (partitioning) Εισαγωγή Διαχείριση μνήμης Kάθε πρόγραμμα έχει το δικό του τμήμα (διαμέριση) στη μνήμη Όλο το πρόγραμμα σε συνεχόμενες θέσεις μνήμης Αντικατάσταση προγραμμάτων μετά τον τερματισμό Εισαγωγή νέων Πιθανή δημιουργία κενών τμημάτων Συμπύκνωση (compaction) Αργή διαδικασία! Το Λ.Σ. διατηρεί λίστα χρησιμοποιούμενων τμημάτων μνήμης Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 11

255 Σελιδοποίηση Εισαγωγή Διαχείριση μνήμης Πρόγραμμα 1 Λειτουργικό Σύστημα Πρόγραμμα 2 Πρόγραμμα 3 Μνήμη Κάθε πρόγραμμα χωρίζεται σε σελίδες (pages) Η μνήμη χωρίζεται σε πλαίσια (frames) Σελίδες και πλαίσια: ίδιο μέγεθος Αποδοτικότερη χρήση μνήμης (λιγότερα κενά) Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 12

256 Σελιδοποίηση (συνέχεια) Εισαγωγή Διαχείριση μνήμης Οι σελίδες έχουν προκαθορισμένο μέγεθος π.χ. 4ΚBytes Μπορούν να τοποθετηθούν σε οποιοδήποτε πλαίσιο μνήμης Ενδεχομένως να μην βρίσκονται όλες στη μνήμη Ανάκληση από δίσκο όταν τις χρειαστεί το πρόγραμμα Σελιδοποίηση κατ απαίτηση (demand paging) Πρακτικά... Το πρόγραμμα βλέπει διαφορετική διεύθυνση μνήμης από την πραγματική (φυσική) του πλαισίου Εικονική μνήμη (virtual memory) Απαιτείται η τήρηση πινάκων αντιστοίχισης διευθύνσεων Απαραίτητη η υποστήριξη από το υλικό (ΚΜΕ) Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 13

257 Κατάτμηση (segmentation) Εισαγωγή Διαχείριση μνήμης Παρόμοια με σελιδοποίηση Διαίρεση σε τμήματα μεταβλητού μεγέθους Για να ταιριάζει με τα χαρακτηριστικά του προγράμματος (;) Πρέπει να φυλάσσεται και η πληροφορία μεγέθους Κατ απαίτηση εικονική μνήμη Μπορεί να συνδυαστεί με σελιδοποίηση Σε δύο επίπεδα Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 14

258 Εικονική Μνήμη Εισαγωγή Διαχείριση μνήμης Λειτουργικό Σύστημα Εικονική Μνήμη Φυσική Μνήμη Δίσκος Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 15

259 Προγράμματα, εργασίες και διεργασίες Εισαγωγή Διαχείριση μνήμης Διεργασίες Πρόγραμμα (program) Ανενεργό σύνολο εντολών (στον δίσκο) Εργασία (job) Πρόγραμμα που έχει επιλεγεί για εκτέλεση Στον δίσκο ή στη μνήμη Διεργασία (process) Πρόγραμμα υπό εκτέλεση Στη μνήμη Εκτελείται ή αναμένει για χρήση πόρων Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 16

260 Χρονοδρομολόγηση (scheduling) Εισαγωγή Διαχείριση μνήμης Διεργασίες Καταστάσεις διεργασίας Έτοιμη προς εκτέλεση (ready) Εκτελούμενη (running) Σε αναμονή (waiting/blocked) Για τη χρήση υπολογιστικών πόρων Όταν πολλές διεργασίες είναι έτοιμες, ποια θα εκτελεστεί; Απόφαση χρονοδρομολογητή (scheduler) είναι μέρος του Λειτουργικού Συστήματος Κριτήριο Επιλογής Όποιος ήρθε πρώτος (first-in first-out FIFO) Χρησιμοποιώντας προτεραιότητες Ανάλογα με προθεσμίες Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 17

261 Ουρές διαχείρισης διεργασιών Εργασία Διεργασία Εκκίνηση Ουρά εργασιών Στη μνήμη Ουρά ετοιμότητας Προς εκτέλεση ΚΜΕ Τερματισμός Ολοκλήρωση αίτησης Τέλος χρονομεριδίου Ουρά αναμονής Αίτηση που απαιτεί αναμονή Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 18

262 Συγχρονισμός διεργασιών Εισαγωγή Διαχείριση μνήμης Διεργασίες Στη χρήση διαμοιραζόμενων πόρων Οι κοινοί πόροι μπορούν να χρησιμοποιούνται μόνο από μία διεργασία κάθε στιγμή Αναμονή υπολοίπων διεργασιών Εμφάνιση καταστάσεων σύγκρουσης Αδιέξοδο Λιμοκτονία Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 19

263 Αδιέξοδο Έχει ανατεθεί Έχει ζητήσει Αρχείο1 Αρχείο2 Έχει ζητήσει Έχει ανατεθεί Αρχεία: κοινόχρηστοι πόροι Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 20

264 Αδιέξοδο (συνέχεια) Εισαγωγή Διαχείριση μνήμης Διεργασίες Συνθήκες εμφάνισης Αμοιβαίος αποκλεισμός στη χρήση των πόρων Παρακράτηση περισσότερων του ενός πόρων Μη προεκτοπισμός κατά τη χρήση των πόρων Κυκλική αναμονή Αν επιτρέψουμε την εκτέλεση διεργασίας μόνο εάν όλοι οι πόροι που ζητά είναι ελεύθεροι; Κίνδυνος λιμοκτονίας Η διεργασία μπορεί να μην εκτελεστεί ποτέ Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 21

265 Διαχείριση συσκευών και αρχείων Εισαγωγή Διαχείριση μνήμης Διεργασίες Διαχείριση συσκευών και αρχείων Συσκευές εισόδου-εξόδου (Ε/Ε) Διαχείριση Εξασφάλιση ορθής λειτουργίας Ρύθμιση προσπέλασης από διεργασίες Διαχείριση αρχείων Λειτουργίες δημιουργίας, διαγραφής, τροποποίησης Έλεγχος προσπέλασης Επίβλεψη αποθήκευσης Εισαγωγή στην Επιστήμη των Υπολογιστών Λειτουργικά Συστήματα 22

266 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων Μ.Στεφανιδάκης

267 Το Λειτουργικό Σύστημα (ξανά) Εισαγωγή Ο γενικός επιβλέπων ενός υπολογιστικού συστήματος Εκτέλεση προγραμμάτων εφαρμογών Διαχείριση υπολογιστικών πόρων ΚΜΕ Μνήμη Συσκευές Ε/Ε Δίσκοι Αρχεία Ενδιάμεσο μεταξύ χρήστη και υπολογιστή Κοινές-συχνά χρησιμοποιούμενες λειτουργίες εφαρμογών Βιβλιοθήκες λειτουργικού συστήματος Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 2

268 Τι είναι ένα αρχείο ; Εισαγωγή Μια αφαιρετική δομή (abstraction) Για την αποθήκευση δεδομένων στους δίσκους του συστήματος Προσφέρεται από το λειτουργικό σύστημα Αρχεία δεδομένων Ως ακολουθία (stream) από bytes binary mode Ως διαδοχικές γραμμές κειμένου text mode Ειδικά αρχεία Συσκευές Ε/Ε, κατάλογοι, πληροφορία συστήματος... Ανάλογα με το λειτουργικό σύστημα! Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 3

269 Δυαδικά αρχεία Εισαγωγή Περιέχουν οποιαδήποτε ακολουθία bytes Ανάγνωση (read) n bytes read(4) : 2D, 98, 44, 59..0F 35 2D FD Επίσης: Μετακίνηση τρέχουσας θέσης οπουδήποτε μέσα στο αρχείο (seek) τρέχουσα θέση τρέχουσα θέση (μετά) Εγγραφή (write) n bytes write( AA, 91, 11, 15)..0F 35 AA FD τρέχουσα θέση τρέχουσα θέση (μετά) Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 4

270 Αρχεία Κειμένου Εισαγωγή Διαδοχικές γραμμές από χαρακτήρες Σε κάποια γνωστή κωδικοποίηση 7/8 bit ASCII, Unicode, Unicode (UTF-8)... Τερματισμός γραμμής με '\n' (newline) Windows: 0D 0A Unix: 0A Λειτουργίες Ανάγνωση επόμενης γραμμής Εγγραφή νέας γραμμής στο τέλος του αρχείου Προσοχή! Μπορούμε να χειριστούμε ένα αρχείο κειμένου ως δυαδικό αρχείο Όχι όμως και το αντίστροφο! Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 5

271 Αποθηκευτικοί δίσκοι (ξανά) Εισαγωγή Οργάνωση σε tracks και sectors Sector = bytes Πληροφορία αναγνώρισης sector Ταχύτητα περιστροφής RPM Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 6

272 Οργάνωση δίσκων σε λογικά μπλοκ Εισαγωγή Για την προσπέλαση ενός συγκεκριμένου φυσικού τμήματος δεδομένων στον δίσκο Απαιτείται σύνθετη πληροφορία track, sector, head... Οργάνωση σε ακολουθία λογικών μπλοκ logical block addressing (LBA) 0...n λογικά μπλοκ λειτουργικό σύστημα: οδηγός δίσκου διεύθυνση λογικού μπλοκ ενσωματωμένος ελεγκτής δίσκου track, sector, head Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 7

273 Διαμέριση δίσκου (partitioning) Εισαγωγή Partitions Ο συνολικός δίσκος χωρίζεται σε μικρότερα λογικά τμήματα Γιατί; Διατήρηση περισσότερων του ενός ΛΣ στο σύστημα dual (multi)-booting Διατήρηση ΛΣ σε ξεχωριστό τμήμα από τα δεδομένα του χρήστη για ευκολότερες επανεγκαταστάσεις Μειονέκτημα Μη ευέλικτο σχήμα Το μέγεθος κάθε partition δεν αλλάζει δυναμικά! Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 8

274 Partitions σε συστήματα PC Εισαγωγή master boot record συνολικός δίσκος primary partition 1 ptr primary partition 2 ptr primary partition 3 ptr primary partition 4 ptr συνολικός δίσκος primary partition 1 ptr primary partition 2 ptr primary partition 3 ptr extended partition ptr primary partition 1 primary partition 1 primary partition 2 primary partition 2 primary partition 3 primary partition 3 extended partition 1 extended partition 2... primary partition 4 extended partition n Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 9

275 Συστήματα Αρχείων Εισαγωγή Συστήματα Αρχείων File systems Οργάνωση αρχείων Ονόματα αρχείων Σε καταλόγους (directories) ή φακέλους (folders) Μέθοδοι για τη δημιουργία, τροποποίηση και διαγραφή αρχείων Διαμοιρασμός κοινών αρχείων Έλεγχος πρόσβασης Αποθήκευση δομών ενός συστήματος αρχείων σε ένα τμήμα (partition) του δίσκου Και στην κεντρική μνήμη για γρήγορη πρόσβαση Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 10

276 Το περιεχόμενο ενός partition Εισαγωγή Συστήματα Αρχείων Boot Block Εκτελέσιμος κώδικας Όταν ο υπολογιστής μπορεί να ξεκινήσει τη λειτουργία του εκτελώντας κώδικα στο partition αυτό Super Block Κεντρικές πληροφορίες για το σύστημα αρχείων που περιέχεται στο partition Πληροφορία ελεύθερου χώρου Πληροφορία θέσης αρχείων Ποιο αρχείο βρίσκεται πού στον δίσκο Περιεχόμενα Αρχείων και Καταλόγων Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 11

277 Πώς αποθηκεύονται τα αρχεία; Εισαγωγή Συστήματα Αρχείων Αποθήκευση σε μπλοκ (ή cluster ) π.χ. 4ΚΒ ανά μπλοκ Προσοχή! Διαφορετικό από το λογικό μπλοκ του δίσκου! Προφανώς ένα αρχείο μπορεί να καταλαμβάνει περισσότερα από ένα μπλοκ και ένας κατάλογος επίσης (είναι αρχείο κι αυτός) Μέθοδος δέσμευσης μπλοκ #1: συνεχόμενα μπλοκ Όλο το αρχείο σε συνεχόμενα μπλοκ Γρήγορη προσπέλαση αρκεί να ξέρουμε αρχή και τέλος Τι συμβαίνει όταν το αρχείο αλλάζει μέγεθος; Fragmentation Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 12

278 Πώς αποθηκεύονται τα αρχεία; Εισαγωγή Συστήματα Αρχείων Μέθοδος δέσμευσης μπλοκ #2: διασυνδεδεμένη λίστα Σε κάθε μπλοκ υπάρχει δείκτης για το επόμενο μπλοκ Αρκεί να ξέρουμε το πρώτο μπλοκ Πώς θα προσπελάσω ένα σημείο προς το τέλος του αρχείου; Μέθοδος δέσμευσης μπλοκ #2β: διασυνδεδεμένη λίστα (παραλλαγή) Πίνακας πληροφορίας για κάθε μπλοκ Αν είναι δεσμευμένο και ποιο είναι το επόμενο Γρήγορη προσπέλαση τυχαίου σημείου αρχείου Ο πίνακας καταλαμβάνει μεγάλο χώρο Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 13

279 Πώς αποθηκεύονται τα αρχεία; Εισαγωγή Συστήματα Αρχείων Μέθοδος δέσμευσης μπλοκ #3: έμμεση δεικτοδότηση Ειδικά μπλοκ (i-nodes) περιέχουν δείκτες σε άλλα μπλοκ Συστήματα αρχείων στο ΛΣ Unix i-node info file data file data file data file data file data file data file data file data file Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 14 data

280 Ιεραρχική δομή καταλόγων Εισαγωγή Συστήματα Αρχείων Κατάλογοι Η ρίζα (/) είναι στην κορυφή Οι κατάλογοι (ή φάκελοι) είναι ειδικά αρχεία που περιέχουν ζεύγη (όνομα-αρχείου, θέση) Κατάλογος κορυφής (ρίζα) Κατάλογος-1 Αρχείο-Β Κατάλογος-2 Αρχείο-Α Αρχείο-Γ Αρχείο-Γ Κατάλογος-1 Αρχείο-Δ Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 15

281 Πού βρίσκεται η ρίζα; Εισαγωγή Συστήματα Αρχείων Κατάλογοι Εξαρτάται από το Λειτουργικό Σύστημα! Windows: κάθε partition που αναγνωρίζεται προστίθεται ως ένα λογικό drive (π.χ. C: D: κλπ), το οποίο αποτελεί τη ρίζα για όλους τους φακέλους που περιέχει άρα έχουμε ένα δάσος από δέντρα! τύπου Unix: υπάρχει μια μοναδική ρίζα και κάθε partition μπορεί να τοποθετηθεί (mount) σε οποιοδήποτε σημείο του δέντρου δεν υπάρχουν λογικά drives Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 16

282 Μονοπάτι Αρχείου Εισαγωγή Συστήματα Αρχείων Κατάλογοι Από τη ρίζα προς το αρχείο (απόλυτο μονοπάτι) Ως αναγνωριστικό του αρχείου που επιλέγουμε Για ευκολία:. είναι ο τρέχων κατάλογος,.. είναι ο κατάλογος πάνω από τον τρέχοντα Κατάλογος κορυφής (ρίζα) Κατάλογος-1 Αρχείο-Β Κατάλογος-2 Αρχείο-Α Αρχείο-Γ Αρχείο-Γ Κατάλογος-1 /Κατάλογος-2/Κατάλογος-1/Αρχείο-Δ Αρχείο-Δ Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 17

283 Μονοπάτι Αρχείου Εισαγωγή Συστήματα Αρχείων Κατάλογοι Σχετικό μονοπάτι Έστω ότι οτρέχων κατάλογος είναι ο Κατάλογος-1 Για ευκολία:. είναι ο τρέχων κατάλογος,.. είναι ο κατάλογος πάνω από τον τρέχοντα Κατάλογος κορυφής (ρίζα) Κατάλογος-1 Αρχείο-Β Κατάλογος-2 Αρχείο-Α Αρχείο-Γ Αρχείο-Γ Κατάλογος-1../Αρχείο-Γ Αρχείο-Δ Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 18

284 Ονόματα Αρχείων Εισαγωγή Συστήματα Αρχείων Κατάλογοι Αρχεία Παλαιότερα υπήρχαν περιορισμοί π.χ η μορφή χαρακτήρες (αλφαριθμητικοί και ορισμένα σημεία στίξης) τελεία 3 χαρακτήρες επέκταση Η επέκταση και σήμερα δηλώνει τον τύπο του αρχείου χωρίς να ισχύει κατ'ανάγκη!.doc.txt.html.pdf.exe κλπ Σήμερα υπάρχει μεγαλύτερη ελευθερία στα ονόματα των αρχείων αρκεί στον ίδιο κατάλογο το όνομα να είναι μοναδικό Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 19

285 Ανοίγοντας ένα αρχείο Εισαγωγή Συστήματα Αρχείων Κατάλογοι Αρχεία Άνοιγμα αρχείου open(filename,mode) filename = το όνομα του αρχείου (και το μονοπάτι αν χρειάζεται) mode = το είδος της ζητούμενης επεξεργασίας read (ανάγνωση μόνο), write (εγγραφή μόνο, τυχόν παλιό αρχείο διαγράφεται), read-write (ανάγνωση-εγγραφή), append (προσθήκη δεδομένων στο τέλος)... binary ή text mode (όχι σε όλα τα ΛΣ) Προετοιμασία δομών ΛΣ για επεξεργασία του αρχείου Υπάρχει και το αντίστοιχο close Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 20

286 Δικαιώματα (Permissions) Εισαγωγή Συστήματα Αρχείων Κατάλογοι Αρχεία Ποιος χρήστης (ή ομάδα χρηστών) μπορεί να κάνει τι σε ένα αρχείο Παράδειγμα: Unix permissions permissions user group drwxr-xr-x 2 mistral mistral :23. drwxr-xr-x 5 mistral mistral :05.. -rw----r-- 1 mistral mistral :08 banner.gif -rw----r-- 1 mistral mistral :23 index.html user group other Εισαγωγή στην Επιστήμη των Υπολογιστών Αρχεία και Συστήματα Αρχείων 21

287 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων (μεταγλωττιστές και περιβάλλον εκτέλεσης) Μ.Στεφανιδάκης

288 Το Λειτουργικό Σύστημα (ξανά) Εισαγωγή Ο γενικός επιβλέπων ενός υπολογιστικού συστήματος Εκτέλεση προγραμμάτων εφαρμογών Διαχείριση υπολογιστικών πόρων ΚΜΕ Μνήμη Συσκευές Ε/Ε Ενδιάμεσο μεταξύ χρήστη και υπολογιστή Κοινές-συχνά χρησιμοποιούμενες λειτουργίες εφαρμογών Βιβλιοθήκες λειτουργικού συστήματος Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 2

289 Προγραμματισμός: Πηγαίος Κώδικας Εισαγωγή Source Code Αρχεία Κειμένου Γλώσσες υψηλού επιπέδου Αποσύνδεση από την αρχιτεκτονική της ΚΜΕ Μεταβλητές - Αντικείμενα Σύνθετες δομές εκτέλεσης Συναρτήσεις Μέθοδοι Χρήση βιβλιοθηκών Απαιτείται μετάφραση ( μεταγλώττιση ) στη γλώσσα που καταλαβαίνει ο υπολογιστής! Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 3

290 Ο τελικός στόχος Εισαγωγή Γλώσσα Μηχανής: η μοναδική γλώσσα που καταλαβαίνει ο υπολογιστής! Λέξεις δυαδικών ψηφίων Προγράμματα σε γλώσσες υψηλού επιπέδου όπως η C, η Java και όχι μόνο αυτές... Πρέπει να μεταγλωττιστούν (μεταφραστούν) σε γλώσσα μηχανής Με ισοδύναμη λειτουργικότητα (;) Η μεταγλώττιση δεν είναι τετριμμένη μετατροπή Το παραγόμενο πρόγραμμα έχει ελάχιστη σχέση με το αρχικό! Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 4

291 Η διαδικασία της μεταγλώττισης Εισαγωγή Μεταγλωττιστές Πηγαίος κώδικας Μεταγλωττιστής Εκτελέσιμος κώδικας Η κλασσική εικόνα Ο μεταγλωττιστής (compiler) μεταφράζει το πρόγραμμα γλώσσας υψηλού επιπέδου (τυπικά) σε εκτελέσιμη γλώσσα μηχανής Εδώ σταματά ο ρόλος του μεταγλωττιστή Αργότερα, το λειτουργικό σύστημα θα τρέξει το εκτελέσιμο πρόγραμμα Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 5

292 Η εξάρτηση από τον επεξεργαστή Εισαγωγή Μεταγλωττιστές Ο μεταγλωττιστής πρέπει να γνωρίζει το σετ εντολών Του επεξεργαστή που θα εκτελέσει το τελικό πρόγραμμα Διαθέσιμες εντολές μέθοδοι προσπέλασης μνήμης Και η κωδικοποίησή τους Διαθέσιμοι καταχωρητές Και οι πιθανές ειδικές λειτουργίες του καθενός Χρήσιμες συμβάσεις Πώς καλούνται οι συναρτήσεις; Πώς θα περαστούν οι παράμετροι; Πού αποθηκεύεται η διεύθυνση επιστροφής Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 6

293 Ο Μεταγλωττιστής Εισαγωγή Μεταγλωττιστές Ο μεταγλωττιστής Είναι επίσης ένα εκτελέσιμο πρόγραμμα Προφανώς γραμμένο σε κάποια γλώσσα προγραμματισμού υψηλού επιπέδου! Μεταγλώττιση Πρέπει να κατανοηθεί πλήρως (χωρίς ασάφειες) το νόημα του προγράμματος γλώσσας υψηλού επιπέδου Μέσω μιας σειράς φάσεων ανάλυσης και επεξεργασίας του πηγαίου κώδικα Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 7

294 Linkers & Loaders Εισαγωγή Μεταγλωττιστές Linkers & Loaders Object code files Libraries Linker Shared Libraries Εκτελέσιμο πρόγραμμα Η έξοδος από μεταγλωττιστή (object code) περιέχει κενά Εξωτερικές αναφορές σε μεταβλητές και συναρτήσεις Ο linker (συνδέτης;) τροποποιεί object code Σαρώνει όλα τα αρχεία εισόδου (object code) Τοποθετεί τα τμήματα κώδικα-δεδομένων στη σειρά Υπολογίζει τις διευθύνσεις που λείπουν Δημιουργεί πληροφορία για τον loader Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 8

295 Linkers & Loaders Εισαγωγή Μεταγλωττιστές Linkers & Loaders Εκτελέσιμο πρόγραμμα Loader Shared Libraries Πρόγραμμα στη μνήμη Loader (φορτωτής;) Προετοιμασία για την εκτέλεση του προγράμματος Φόρτωση σελίδων κώδικα-δεδομένων στη μνήμη Συνήθως: απεικόνιση στις σελίδες της εικονικής μνήμης Δυναμική σύνδεση κοινών βιβλιοθηκών Όπου αυτό υποστηρίζεται Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 9

296 Μεταγλωττιζόμενες γλώσσες Εισαγωγή Μεταγλωττιστές Linkers & Loaders Είδη γλωσσών Source code Compiler Εκτελέσιμο πρόγραμμα Object code Linker/Loader ΚΜΕ - CPU Κατά την εκτέλεση Το εκτελέσιμο πρόγραμμα έχει τον έλεγχο της ΚΜΕ Οι εντολές του σε γλώσσα μηχανής καθορίζουν τι ακριβώς θα εκτελέσει η ΚΜΕ Ο μεταγλωττιστής δεν παίζει πλέον κανέναν ρόλο Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 10

297 Διερμηνευόμενες γλώσσες Εισαγωγή Μεταγλωττιστές Linkers & Loaders Είδη γλωσσών Source code Διερμηνευτής Ο καθαρός διερμηνευτής (interpreter) ΚΜΕ - CPU Είναι ένα εκτελέσιμο πρόγραμμα Έχει ο ίδιος τον έλεγχο της ΚΜΕ Διαβάζει τον πηγαίο κώδικα (π.χ. γραμμή-προς-γραμμή) Και εκτελεί την ανάλογη λειτουργία Επαναληπτικά μέχρι το τέλος του πηγαίου κώδικα Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 11

298 Διερμηνευόμενες γλώσσες Εισαγωγή Μεταγλωττιστές Linkers & Loaders Είδη γλωσσών Source code Compiler Byte Code Διερμηνευτής (Virtual Machine) ΚΜΕ - CPU Υβριδικός διερμηνευτής Προηγείται μεταγλώττιση σε ενδιάμεση μορφή κώδικα Byte Code Στη συνέχεια η ενδιάμεση μορφή κώδικα διερμηνεύεται από μια εικονική μηχανή (VM) Συνήθως σε άλλο υπολογιστικό σύστημα Το σχήμα όλων των σύγχρονων διερμηνευόμενων γλωσσών Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 12

299 Εικονική Μηχανή (Virtual Machine) Εισαγωγή Μεταγλωττιστές Linkers & Loaders Είδη γλωσσών Byte code Διερμηνεία Διαχείριση μνήμης Ασφάλεια VM ΚΜΕ - CPU Εικονική μηχανή Σύνθετο περιβάλλον εκτέλεσης Ανεξάρτητο αρχιτεκτονικής εκτέλεσης Αλλά: διερμηνεία αργότερη της άμεσης εκτέλεσης Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 13

300 Μεταγλωττιστής Just-In-Time (JIT) Εισαγωγή Μεταγλωττιστές Linkers & Loaders Είδη γλωσσών Byte code JIT Compiler Στην πλατφόρμα εκτέλεσης Εκτελέσιμο πρόγραμμα ΚΜΕ - CPU Για αύξηση της ταχύτητας εκτέλεσης Εισαγωγή στην Επιστήμη των Υπολογιστών Εκτέλεση Προγραμμάτων 14

301 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων Μ.Στεφανιδάκης

302 Οι απειλές Εισαγωγή Ένας κακόβουλος χρήστης Καταγράφει μηνύματα που ανταλλάσσονται σε ένα κανάλι επικοινωνίας και εισάγει νέα μηνύματα Τροποποιεί ξένα δεδομένα Και μπορεί Να υποκλέψει κωδικούς πρόσβασης και δεδομένα Να προσποιηθεί ότι είναι κάποιος άλλος Να θέσει υπό έλεγχο επικοινωνία μεταξύ τρίτων Να αποκλείσει τρίτους από τις υπηρεσίες Διαδικτύου κλπ... Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 2

303 Αρχές ασφάλειας δεδομένων Εισαγωγή Απόρρητο (privacy) Μέσω κρυπτογράφησης Πιστοποίηση αυθεντικότητας Ταυτότητα χρήστη authentication Δικαιώματα χρήσης δεδομένων authorization Ακεραιότητα δεδομένων (integrity) Και μη απάρνηση από αποστολέα non-repudiation Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 3

304 Απόρρητο επικοινωνίας Εισαγωγή Μυστικό κλειδί Αποστολέας (Α) κείμενο Αλγόριθμος κρυπτογράφησης κρυπτοκείμενο Παραλήπτης (Β) Αλγόριθμος αποκρυπτογράφησης κείμενο Κλειδί Α Κλειδί Β Εξασφάλιση απορρήτου μέσω κρυπτογράφησης Αποστολέας-παραλήπτης Άτομα αλλά και υπολογιστές (π.χ. εξυπηρετητές) Αλγόριθμος κρυπτογράφησης Παλαιότερα: κρυφός Σήμερα: ευρέως γνωστός (πρότυπο!) χρήση κλειδιών Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 4

305 Κρυπτογράφηση με μυστικό (συμμετρικό) κλειδί Εισαγωγή Μυστικό κλειδί Ίδιο κλειδί αποστολέα (Α) παραλήπτη (Β) Κλειδί Α = Κλειδί Β Το κλειδί πρέπει να είναι μυστικό! Και μόνο μεταξύ των Α και Β Συμμετρικοί αλγόριθμοι κρυπτογράφησης και αποκρυπτογράφησης Data Encryption Standard (DES) 56-bit κλειδί Επαναληπτικά βήματα αντιμετάθεσης bits και πράξεων XOR 3DES, AES (128, 192 ή 256-bit κλειδιά) Το πρόβλημα η επιλογή και ανταλλαγή του μυστικού κλειδιού μεταξύ Α, Β Με ποιον τρόπο θα υπάρξει ασφαλής επικοινωνία; Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 5

306 Πιστοποίηση ταυτότητας με μυστικό κλειδί Αποστολέας (Α) password Αλγόριθμος κρυπτογράφησης κρυπτογραφημένο μήνυμα: Είμαι ο Α, password Παραλήπτης (Β) Αλγόριθμος αποκρυπτογράφησης πιστοποίηση Κλειδί record playback Κλειδί Τρίτος Απόδειξη της ταυτότητας του συνομιλητή Μέσω κάποιου πρωτοκόλλου πιστοποίησης Π.χ. με αποστολή μέσω δικτύου ενός password Η χρήση του μυστικού κλειδιού Κωδικοποίηση password Ο κάτοχος του κλειδιού είναι αυτός που ισχυρίζεται Με μεγάλη βεβαιότητα Όχι απόλυτη όμως! Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 6

307 Κρυπτογράφηση με δημόσιο κλειδί Εισαγωγή Μυστικό κλειδί Δημόσιο κλειδί Αποστολέας (Α) κείμενο Αλγόριθμος κρυπτογράφησης κρυπτοκείμενο Παραλήπτης (Β) Αλγόριθμος αποκρυπτογράφησης κείμενο Ιδιωτικό κλειδί Β Δημόσιο κλειδί Β Ζεύγη κλειδιών παραλήπτη (Β) Δημόσιο κλειδί: για κρυπτογράφηση (αποστολέας Α) Διαθέσιμο σε όλους Ιδιωτικό κλειδί: για αποκρυπτογράφηση (παραλήπτης Β) Γνωστό μόνο στον κάτοχό του (Β) Ό,τι κρυπτογραφείται με το ένα κλειδί, αποκρυπτογραφείται με το άλλο και αντίστροφα Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 7

308 Κρυπτογράφηση με δημόσιο κλειδί Εισαγωγή Μυστικό κλειδί Δημόσιο κλειδί Αλγόριθμος Rivest-Shamir-Adleman (RSA) Δημιουργία κλειδιών Επιλογή μεγάλων πρώτων αριθμών p,q (n = pq 768 bits) Υπολογισμός αριθμών e,d από pq, (p-1)(q-1) Δημόσιο κλειδί: (n,e) Ιδιωτικό κλειδί: (n,d) Δεν υπάρχει γνωστός γρήγορος αλγόριθμος για εύρεση p,q από n Εδώ στηρίζεται η ασφάλεια του RSA Κρυπτογράφηση Έστω κείμενο m κρυπτοκείμενο c = m e mod n (κρυπτογράφηση) κείμενο m = c d mod n (αποκρυπτογράφηση) Η διαδικασία επιτυγχάνεται και με αντιστροφή κλειδιών! Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 8

309 Κρυπτογράφηση με δημόσιο κλειδί Εισαγωγή Μυστικό κλειδί Δημόσιο κλειδί Χρονοβόρα διαδικασία κρυπτογράφησης αποκρυπτογράφησης με δημόσιο κλειδί Με μυστικό (συμμετρικό) κλειδί: τουλάχιστον 100 φορές γρηγορότερα! Συνήθως Πρώτα ανταλλαγή μυστικού κλειδιού με RSA Στη συνέχεια επικοινωνία με (από)κρυπτογράφηση με το μυστικό κλειδί Ποιος εγγυάται τη διανομή του δημόσιου κλειδιού; Σε αντίθεση με το μυστικό κλειδί: εδώ ο καθένας μπορεί να ισχυριστεί ότι είναι ο οποιοσδήποτε! Και να στείλει το δημόσιο κλειδί του αντί του σωστού...! Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 9

310 Πιστοποίηση δημόσιου κλειδιού; Εισαγωγή Μυστικό κλειδί Δημόσιο κλειδί Αποστολέας (Α) κείμενο Αλγόριθμος κρυπτογράφησης κρυπτοκείμενο Παραλήπτης (Β) Αλγόριθμος αποκρυπτογράφησης κείμενο Ιδιωτικό κλειδί Β Δημόσιο κλειδί ΒΓ Δημόσιο κλειδί Γ Ιδιωτικό κλειδί Γ Τρίτος (Γ) Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 10

311 Ψηφιακή υπογραφή Εισαγωγή Μυστικό κλειδί Δημόσιο κλειδί Ψηφιακή υπογραφή Κρυπτογραφική τεχνική για εξασφάλιση: Ακεραιότητας Αποφυγή αλλοίωσης δεδομένων Αυθεντικότητας Ποιος είναι ο δημιουργός-αποστολέας; Μη απάρνησης Από την πλευρά του αποστολέα Προσοχή: η ψηφιακή υπογραφή δεν εξασφαλίζει το απόρρητο! Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 11

312 Τεχνική ψηφιακής υπογραφής Εισαγωγή Μυστικό κλειδί Δημόσιο κλειδί Ψηφιακή υπογραφή Χρήση μεθόδου κρυπτογράφησης δημόσιου κλειδιού Αντίστροφα με διαδικασία τήρησης απορρήτου: Ο αποστολέας κρυπτογραφεί το κείμενο με το ιδιωτικό του κλειδί Παραγωγή ψηφιακής υπογραφής, αποστολή μαζί με αρχικό κείμενο Ο παραλήπτης αποκρυπτογραφεί την ψηφιακή υπογραφή με το δημόσιο κλειδί του αποστολέα Μόνο με το κλειδί αυτό λαμβάνεται το αρχικό κείμενο Και πιστοποιείται ο αποστολέας Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 12

313 Συνόψεις (digests) Αποστολέας (Α) Παραλήπτης (Β) κείμενο σύνοψη κρυπτογράφηση σύνοψης Κείμενο & κρυπτογραφημένη σύνοψη σύνοψη αποκρυπτογράφηση σύνοψης σύγκριση =? Ιδιωτικό κλειδί Α Δημόσιο κλειδί Α Για την αποφυγή κρυπτογράφησης όλων των δεδομένων Δημιουργία σύνοψης Αλγόριθμοι κατακερματισμού (Σχεδόν) αδύνατο διαφορετικό μήνυμα να δώσει την ίδια σύνοψη MD5 (128-bit), SHA-1 (160-bit) Κρυπτογράφηση της σύνοψης μόνο με ιδιωτικό κλειδί αποστολέα Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 13

314 Εισαγωγή Μυστικό κλειδί Δημόσιο κλειδί Ψηφιακή υπογραφή Πιστοποίηση δημόσιων κλειδιών Υποδομή Δημόσιου Κλειδιού (Public Key Infrastructure PKI) Έμπιστοι ενδιάμεσοι: αρχές πιστοποίησης Certification Authorities (CAs) Πιστοποίηση ταυτότητας ενός συνομιλητή Πιστοποίηση εταιριών ηλεκτρονικού εμπορίου Σύνδεση ενός δημόσιου κλειδιού με μια οντότητα π.χ. διεύθυνση IP, εταιρία... Η αξιοπιστία της πιστοποίησης εξαρτάται από την αξιοπιστία της CA! Υποδομή Δημόσιου Κλειδιού Αλυσίδα CAs Root CA Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 14

315 Πιστοποιητικά (Certificates) Εισαγωγή Μυστικό κλειδί Δημόσιο κλειδί Ψηφιακή υπογραφή Πιστοποίηση δημόσιων κλειδιών Πιστοποιητικά (certificates) Περιέχουν πληροφορία για έναν χρήστη Και το δημόσιο κλειδί του για τα οποία εγγυάται κάποια CA υπογράφοντας ψηφιακά το πιστοποιητικό με το ιδιωτικό κλειδί της Η CA: ΧΥΖ βεβαιώνει ότι ο: Α έχει δημόσιο κλειδί: ΔΚ(Α) <ψηφιακή υπογραφή από ΙΚ(CA)> Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 15

316 Αλυσίδα CA Εισαγωγή Μυστικό κλειδί Δημόσιο κλειδί Ψηφιακή υπογραφή Πιστοποίηση δημόσιων κλειδιών Η CA1: ΧΥΖ βεβαιώνει ότι ο: XYZ έχει δημόσιο κλειδί: ΔΚ(CA1) <ψηφιακή υπογραφή από ΙΚ(CA1)> root CA Η CA1: XYZ βεβαιώνει ότι ο: MNO έχει δημόσιο κλειδί: ΔΚ(CA2) <ψηφιακή υπογραφή από ΙΚ(CA1)> Η CA2: MNO βεβαιώνει ότι ο: Α έχει δημόσιο κλειδί: ΔΚ(Α) <ψηφιακή υπογραφή από ΙΚ(CA2)> Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 16

317 Παράδειγμα χρήσης Certificates Εισαγωγή Μυστικό κλειδί Δημόσιο κλειδί Ψηφιακή υπογραφή Πιστοποίηση δημόσιων κλειδιών Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων 17

Αναπαράσταση Μη Αριθμητικών Δεδομένων

Αναπαράσταση Μη Αριθμητικών Δεδομένων Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Αναπαράσταση Μη Αριθμητικών Δεδομένων (κείμενο, ήχος και εικόνα στον υπολογιστή) http://di.ionio.gr/~mistral/tp/csintro/

Διαβάστε περισσότερα

! Δεδομένα: ανεξάρτητα από τύπο και προέλευση, στον υπολογιστή υπάρχουν σε μία μορφή: 0 και 1

! Δεδομένα: ανεξάρτητα από τύπο και προέλευση, στον υπολογιστή υπάρχουν σε μία μορφή: 0 και 1 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 5-6 Αναπαράσταση Μη Αριθμητικών Δεδομένων (κείμενο, ήχος και εικόνα στον υπολογιστή) http://di.ionio.gr/~mistral/tp/csintro/

Διαβάστε περισσότερα

Εισαγωγή στους Υπολογιστές

Εισαγωγή στους Υπολογιστές Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Εισαγωγή στους Υπολογιστές (αρχές λειτουργίας και τεχνολογία) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Σχετικά με το μάθημα. Ο Υπολογιστής Η γενική εικόνα. Η μνήμη. Ενότητες μαθήματος. Εισαγωγή στους Υπολογιστές. Βιβλία για το μάθημα

Σχετικά με το μάθημα. Ο Υπολογιστής Η γενική εικόνα. Η μνήμη. Ενότητες μαθήματος. Εισαγωγή στους Υπολογιστές. Βιβλία για το μάθημα Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Εισαγωγή στους Υπολογιστές (αρχές λειτουργίας και τεχνολογία) Σχετικά με το μάθημα Ενότητες μαθήματος Αρχές λειτουργίας

Διαβάστε περισσότερα

Πράξεις με δυαδικούς αριθμούς

Πράξεις με δυαδικούς αριθμούς Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 25-6 Πράξεις με δυαδικούς αριθμούς (λογικές πράξεις) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Εκτέλεση πράξεων

Διαβάστε περισσότερα

Εκτέλεση πράξεων. Ψηφιακά Ηλεκτρονικά και Δυαδική Λογική. Πράξεις με δυαδικούς αριθμούς. Πράξεις με δυαδικούς αριθμούς

Εκτέλεση πράξεων. Ψηφιακά Ηλεκτρονικά και Δυαδική Λογική. Πράξεις με δυαδικούς αριθμούς. Πράξεις με δυαδικούς αριθμούς Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 24-5 Πράξεις με δυαδικούς αριθμούς (λογικές πράξεις) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης ; Ποιες κατηγορίες

Διαβάστε περισσότερα

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit!

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit! Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 25-6 Πράξεις με δυαδικούς αριθμούς (αριθμητικές ) http://di.ionio.gr/~mistral/tp/csintro/ Αριθμοί Πράξεις με δυαδικούς αριθμούς

Διαβάστε περισσότερα

Εισαγωγή στην Αρχιτεκτονική Η/Υ

Εισαγωγή στην Αρχιτεκτονική Η/Υ Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2017-18 Εισαγωγή στην Αρχιτεκτονική (θεμελιώδεις αρχές λειτουργίας των υπολογιστών) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Πράξεις με δυαδικούς αριθμούς

Πράξεις με δυαδικούς αριθμούς Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 25-6 Πράξεις με δυαδικούς αριθμούς (αριθμητικές πράξεις) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Πράξεις με δυαδικούς

Διαβάστε περισσότερα

Σχετικά με το μάθημα. Η «μνήμη» Ο «Υπολογιστής» Ενότητες μαθήματος. Εισαγωγή στους Υπολογιστές

Σχετικά με το μάθημα. Η «μνήμη» Ο «Υπολογιστής» Ενότητες μαθήματος. Εισαγωγή στους Υπολογιστές Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2019-20 Εισαγωγή στους Υπολογιστές (αρχές λειτουργίας και τεχνολογία) Σχετικά με το μάθημα Ενότητες μαθήματος Αρχές λειτουργίας

Διαβάστε περισσότερα

Το μάθημα συνοπτικά (1) Το μάθημα συνοπτικά (2) Τι είναι ένα υπολογιστικό σύστημα ;

Το μάθημα συνοπτικά (1) Το μάθημα συνοπτικά (2) Τι είναι ένα υπολογιστικό σύστημα ; Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2017-18 Εισαγωγή στην Αρχιτεκτονική (θεμελιώδεις αρχές λειτουργίας των υπολογιστών) http://mxstef.gthub.o/courses/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Εισαγωγή στην Αρχιτεκτονική Η/Υ

Εισαγωγή στην Αρχιτεκτονική Η/Υ Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2014-15 Εισαγωγή στην Αρχιτεκτονική (θεμελιώδεις αρχές λειτουργίας των υπολογιστών) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Το μάθημα συνοπτικά (1) Το μάθημα συνοπτικά (2) Τι είναι ένα υπολογιστικό σύστημα ;

Το μάθημα συνοπτικά (1) Το μάθημα συνοπτικά (2) Τι είναι ένα υπολογιστικό σύστημα ; Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Εισαγωγή στην Αρχιτεκτονική (θεμελιώδεις αρχές λειτουργίας των υπολογιστών) http://mxstef.gthub.o/courses/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Οργάνωση Υπολογιστών (ΙI)

Οργάνωση Υπολογιστών (ΙI) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2016-17 Οργάνωση Υπολογιστών (ΙI) (κύρια και κρυφή μνήμη) http://mixstef.github.io/courses/csintro/ Μ.Στεφανιδάκης Ένα τυπικό

Διαβάστε περισσότερα

Κύρια μνήμη. Μοντέλο λειτουργίας μνήμης. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (ΙI)

Κύρια μνήμη. Μοντέλο λειτουργίας μνήμης. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (ΙI) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 015-16 Οργάνωση Υπολογιστών (ΙI) (κύρια και ) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα τυπικό υπολογιστικό

Διαβάστε περισσότερα

i Όλες οι σύγχρονες ΚΜΕ είναι πολυπλοκότερες!

i Όλες οι σύγχρονες ΚΜΕ είναι πολυπλοκότερες! Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Η υπολογιστική

Διαβάστε περισσότερα

Κεντρική Μονάδα Επεξεργασίας

Κεντρική Μονάδα Επεξεργασίας Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Μονάδα Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Οργάνωση Υπολογιστών (Ι)

Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

Διαβάστε περισσότερα

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι)

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

Διαβάστε περισσότερα

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή 1. Ηλεκτρονικός Υπολογιστής Ο Ηλεκτρονικός Υπολογιστής είναι μια συσκευή, μεγάλη ή μικρή, που επεξεργάζεται δεδομένα και εκτελεί την εργασία του σύμφωνα με τα παρακάτω

Διαβάστε περισσότερα

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Τεχνολογίες Κύριας (και η ανάγκη για χρήση ιεραρχιών μνήμης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης i Στα σύγχρονα

Διαβάστε περισσότερα

Τεχνολογίες Κύριας Μνήμης

Τεχνολογίες Κύριας Μνήμης Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Τεχνολογίες Κύριας (και η ανάγκη για χρήση ιεραρχιών μνήμης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Κύρια Μνήμη

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Ενότητα 3 Λειτουργίες σε Bits, Αριθμητικά Συστήματα Χρήστος Γκουμόπουλος Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Φύση υπολογιστών Η

Διαβάστε περισσότερα

Αρχιτεκτονικές Συνόλου Εντολών

Αρχιτεκτονικές Συνόλου Εντολών Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Αρχιτεκτονικές Συνόλου Εντολών (Instruction Set Architectures - ISA) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Ο

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07 Τμήμα θεωρίας: Α.Μ. 8, 9 Κάθε Πέμπτη, 11πμ-2μμ, ΑΜΦ23. Διδάσκων: Ντίνος Φερεντίνος Γραφείο 118 email: kpf3@cornell.edu Μάθημα: Θεωρία + προαιρετικό

Διαβάστε περισσότερα

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΕΦΑΛΑΙΟ 7ο ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Γενικό διάγραμμα υπολογιστικού συστήματος Γενικό διάγραμμα υπολογιστικού συστήματος - Κεντρική Μονάδα Επεξεργασίας ονομάζουμε

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ. (Μέτρηση και τεχνικές βελτίωσης απόδοσης)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ. (Μέτρηση και τεχνικές βελτίωσης απόδοσης) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Απόδοση ΚΜΕ (Μέτρηση και τεχνικές βελτίωσης απόδοσης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Κεντρική Μονάδα Επεξεργασίας

Διαβάστε περισσότερα

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους;

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους; Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Δομή Εντολών και Παραδείγματα) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική

Διαβάστε περισσότερα

i Throughput: Ο ρυθμός ολοκλήρωσης έργου σε συγκεκριμένο χρόνο

i Throughput: Ο ρυθμός ολοκλήρωσης έργου σε συγκεκριμένο χρόνο Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 6-7 Απόδοση ΚΜΕ (Μέτρηση και τεχνικές βελτίωσης απόδοσης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Κεντρική Μονάδα Επεξεργασίας

Διαβάστε περισσότερα

; Τι περιέχεται στη συσκευασία ενός μικροεπεξεργαστή σήμερα;

; Τι περιέχεται στη συσκευασία ενός μικροεπεξεργαστή σήμερα; Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Αρχιτεκτονικές Συνόλου Εντολών (Instruction Set Architectures - ISA) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Τι

Διαβάστε περισσότερα

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM). Μνήμες Ένα από τα βασικά πλεονεκτήματα των ψηφιακών συστημάτων σε σχέση με τα αναλογικά, είναι η ευκολία αποθήκευσης μεγάλων ποσοτήτων πληροφοριών, είτε προσωρινά είτε μόνιμα Οι πληροφορίες αποθηκεύονται

Διαβάστε περισσότερα

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης Υπολογιστές Ι Εισαγωγή Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους.

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους. Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους. *Τα φυσικά μέρη που μπορούμε να δούμε και να αγγίξουμε ονομάζονται συνολικά υλικό (hardware). * * υπερυπολογιστές

Διαβάστε περισσότερα

Τετάρτη 5-12/11/2014. ΣΗΜΕΙΩΣΕΙΣ 3 ου και 4 ου ΜΑΘΗΜΑΤΟΣ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ Α ΕΞΑΜΗΝΟ

Τετάρτη 5-12/11/2014. ΣΗΜΕΙΩΣΕΙΣ 3 ου και 4 ου ΜΑΘΗΜΑΤΟΣ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ Α ΕΞΑΜΗΝΟ Τετάρτη 5-12/11/2014 ΣΗΜΕΙΩΣΕΙΣ 3 ου και 4 ου ΜΑΘΗΜΑΤΟΣ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ Α ΕΞΑΜΗΝΟ ΕΚΠΑΙΔΕΥΤΗΣ: ΤΡΟΧΙΔΗΣ ΠΑΝΑΓΙΩΤΗΣ 1. Παράσταση και οργάνωση δεδομένων

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών 1 Οργάνωση υπολογιστών ΚΜΕ Κύρια Μνήμη Υποσύστημα εισόδου/εξόδου 2 Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) R1 R2 ΑΛΜ

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ I Ενότητα 6

ΠΛΗΡΟΦΟΡΙΚΗ I Ενότητα 6 ΠΛΗΡΟΦΟΡΙΚΗ I Ενότητα 6 ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ Bits & Bytes Bit: η μικρότερη μονάδα πληροφορίας μία από δύο πιθανές καταστάσεις (ναι / όχι, αληθές / ψευδές, n / ff) κωδικοποίηση σε 0 ή 1 δυαδικό σύστημα

Διαβάστε περισσότερα

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής)

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής) ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α Γενικού Λυκείου (Μάθημα Επιλογής) Σύγχρονα Υπολογιστικά Συστήματα τους υπερυπολογιστές (supercomputers) που χρησιμοποιούν ερευνητικά εργαστήρια τα μεγάλα συστήματα (mainframes)

Διαβάστε περισσότερα

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07 Ενότητα 4 Εισαγωγή στην Πληροφορική Κεφάλαιο 4Α: Αναπαράσταση πληροφορίας Κεφάλαιο 4Β: Επεξεργαστές που χρησιµοποιούνται σε PCs Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Εισαγωγή

Διαβάστε περισσότερα

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ (Τμήματα Υπολογιστή) ΕΚΠΑΙΔΕΥΤΗΣ:ΠΟΖΟΥΚΙΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΤΜΗΜΑΤΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ Κάθε ηλεκτρονικός υπολογιστής αποτελείται

Διαβάστε περισσότερα

Αναπαράσταση Δεδομένων. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Αναπαράσταση Δεδομένων. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Αναπαράσταση Δεδομένων ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Αναπαράσταση δεδομένων Κατάλληλη συμβολική αναπαράσταση δεδομένων, για απλοποίηση βασικών πράξεων, όπως πρόσθεση Πόσο εύκολο είναι

Διαβάστε περισσότερα

επιφάνεια πυριτίου Αναφορά στο Εκπαιδευτικό Υλικό : 5. Αναφορά στο Εργαστήριο :

επιφάνεια πυριτίου Αναφορά στο Εκπαιδευτικό Υλικό : 5. Αναφορά στο Εργαστήριο : 2. Α/Α Διάλεξης : 1 1. Τίτλος : Εισαγωγή στην Ψηφιακή Τεχνολογία 2. Μαθησιακοί Στόχοι : Λογικές Πύλες και η υλοποίησή τους με τρανζίστορ. Κατασκευή ολοκληρωμένων κυκλωμάτων. 3. Θέματα που καλύπτει : Λογικές

Διαβάστε περισσότερα

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Τμήμα Λογιστικής Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Μάθημα 8 Κεντρική Μονάδα Επεξεργασίας και Μνήμη 1 Αρχιτεκτονική του Ηλεκτρονικού Υπολογιστή Μονάδες Εισόδου Κεντρική

Διαβάστε περισσότερα

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ΗΜΥ 100 Εισαγωγή στην Τεχνολογία Στέλιος Τιμοθέου ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΑ ΘΕΜΑΤΑ ΜΑΣ ΣΗΜΕΡΑ Συστήματα αρίθμησης Δυαδικό αριθμητικό

Διαβάστε περισσότερα

Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ)

Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Δομή Εντολών και Παραδείγματα) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική

Διαβάστε περισσότερα

Βασική δοµή και Λειτουργία Υπολογιστή

Βασική δοµή και Λειτουργία Υπολογιστή Βασική δοµή και Λειτουργία Υπολογιστή Η τεχνολογία των Η/Υ έχει βασιστεί στη λειτουργία του ανθρώπινου οργανισµού. Οπως ο άνθρωπος πέρνει εξωτερικά ερεθίσµατα από το περιβάλλον τα επεξεργάζεται και αντιδρά

Διαβάστε περισσότερα

Ιεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες

Ιεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κρυφές Μνήμες (οργάνωση, λειτουργία και απόδοση) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Για βελτίωση της απόδοσης

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες. (οργάνωση, λειτουργία και απόδοση)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες. (οργάνωση, λειτουργία και απόδοση) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κρυφές Μνήμες (οργάνωση, λειτουργία και απόδοση) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Ιεραρχία συχνά και το

Διαβάστε περισσότερα

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Τι εννοούμε με τον όρο υπολογιστικό σύστημα και τι με τον όρο μικροϋπολογιστικό σύστημα; Υπολογιστικό

Διαβάστε περισσότερα

Ψηφιακή Λογική και Σχεδίαση

Ψηφιακή Λογική και Σχεδίαση Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 26-7 Ψηφιακή Λογική και Σχεδίαση (σχεδίαση συνδυαστικών κυκλωμάτων) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Το τρανζίστορ

Διαβάστε περισσότερα

Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων.

Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων. Α Γενικού Λυκείου Κεφάλαιο 1 1.1 Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων. Ιδιαίτερη θέση έχουν οι Υπολογιστικές συσκευές. Μηχανισμός

Διαβάστε περισσότερα

i Το τρανζίστορ αυτό είναι τύπου NMOS. Υπάρχει και το συμπληρωματικό PMOS. ; Τι συμβαίνει στο τρανζίστορ PMOS; Το τρανζίστορ MOS(FET)

i Το τρανζίστορ αυτό είναι τύπου NMOS. Υπάρχει και το συμπληρωματικό PMOS. ; Τι συμβαίνει στο τρανζίστορ PMOS; Το τρανζίστορ MOS(FET) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 25-6 Το τρανζίστορ MOS(FET) πύλη (gate) Ψηφιακή και Σχεδίαση πηγή (source) καταβόθρα (drai) (σχεδίαση συνδυαστικών κυκλωμάτων) http://di.ioio.gr/~mistral/tp/comparch/

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ 1 Πράξεις με μπιτ 2 Αριθμητικές Πράξεις σε Ακέραιους Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση Ο πολλαπλασιασμός

Διαβάστε περισσότερα

Κεντρική Μονάδα Επεξεργασίας. Επανάληψη: Απόδοση ΚΜΕ. ΚΜΕ ενός κύκλου (single-cycle) Παραλληλισμός σε επίπεδο εντολών. Υπολογιστικό σύστημα

Κεντρική Μονάδα Επεξεργασίας. Επανάληψη: Απόδοση ΚΜΕ. ΚΜΕ ενός κύκλου (single-cycle) Παραλληλισμός σε επίπεδο εντολών. Υπολογιστικό σύστημα Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Παραλληλισμός σε επίπεδο εντολών (Pipelining και άλλες τεχνικές αύξησης απόδοσης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Κώδικας μηχανής (E) Ο επεξεργαστής μπορεί να εκτελέσει το αρχιτεκτονικό σύνολο εντολών (instruction set architecture) Οι

Διαβάστε περισσότερα

Κεφάλαιο 2 Η έννοια και η παράσταση της πληροφορίας στον ΗΥ. Εφ. Πληροφορικής Κεφ. 2 Καραμαούνας Πολύκαρπος 1

Κεφάλαιο 2 Η έννοια και η παράσταση της πληροφορίας στον ΗΥ. Εφ. Πληροφορικής Κεφ. 2 Καραμαούνας Πολύκαρπος 1 Κεφάλαιο 2 Η έννοια και η παράσταση της πληροφορίας στον ΗΥ Καραμαούνας Πολύκαρπος 1 2.1Η έννοια της πληροφορίας Δεδομένα Πληροφορία Καραμαούνας Πολύκαρπος 2 2.2 ΗΥ Το βασικό εργαλείο επεξεργασίας και

Διαβάστε περισσότερα

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Επανάληψη 1 Ο νόμος του Moore λέει ότι: a) Η πυκνότητα των κυκλωμάτων της μνήμης είναι πάντα τριπλάσια αυτής των ολοκληρωμένων κυκλωμάτων. b) Κάθε 18 μήνες

Διαβάστε περισσότερα

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ» Περιεχόμενα Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»... 2 Καταχωρητές... 3 Αριθμητική-λογική μονάδα... 3 Μονάδα μνήμης... 4 Μονάδα Εισόδου - Εξόδου... 5 Μονάδα ελέγχου... 5 Ρεπερτόριο Εντολών «ΑΒΑΚΑ»... 6 Φάση

Διαβάστε περισσότερα

Λύσεις Ασκήσεων ΣΕΙΡΑ 1 η. Πρόσημο και μέγεθος

Λύσεις Ασκήσεων ΣΕΙΡΑ 1 η. Πρόσημο και μέγεθος ΓΕΩΠΟΝΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΕΡΓΑΣΤΗΡΙΟ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΠΛΗΡΟΦΟΡΙΚΗ ΕΞΑΜΗΝΟ: 1 ο /2015-16 ΤΜΗΜΑ: ΑΓΡΟΤΙΚΗΣ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΑΝΑΠΤΥΞΗΣ Καθηγητής: Θ. Τσιλιγκιρίδης Άσκηση 1η Περιεχόμενα μνήμης Λύσεις

Διαβάστε περισσότερα

Παραλληλισμός σε επίπεδο εντολών

Παραλληλισμός σε επίπεδο εντολών Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Παραλληλισμός σε επίπεδο εντολών (Pipelining και άλλες τεχνικές αύξησης απόδοσης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών

Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών Η επεξεργασία των δεδομένων ακολουθεί μια στερεότυπη διαδρομή: τα δεδομένα εισάγονται στο υπολογιστικό σύστημα, υφίστανται μια ορισμένη επεξεργασία και

Διαβάστε περισσότερα

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή 1 Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή μνήμη(cache). Η cache είναι πολύ σημαντική, πολύ γρήγορη,

Διαβάστε περισσότερα

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Βασικές Έννοιες Προγραμματισμού Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Αριθμητικά συστήματα Υπάρχουν 10 τύποι ανθρώπων: Αυτοί

Διαβάστε περισσότερα

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας Κεφάλαιο 3 ο Αρχιτεκτονική Υπολογιστών Μάθημα 3.: Κεντρική Μονάδα Επεξεργασίας Όταν ολοκληρώσεις το κεφάλαιο θα μπορείς: Να σχεδιάζεις την εσωτερική δομή της ΚΜΕ και να εξηγείς τη λειτουργία των επιμέρους

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 2ο Αναπαράσταση Δεδομένων

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 2ο Αναπαράσταση Δεδομένων Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 2ο Αναπαράσταση Δεδομένων 1 2.1 Τύποι Δεδομένων Τα δεδομένα σήμερα συναντώνται σε διάφορες μορφές, στις οποίες περιλαμβάνονται αριθμοί,

Διαβάστε περισσότερα

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Επανάληψη 1 Ο νόμος του Moore λέει ότι a) Η πυκνότητα των κυκλωμάτων της Μνήμης είναι πάντα τριπλάσια αυτής των ολοκληρωμένων κυκλωμάτων. b) Κάθε 18 μήνες

Διαβάστε περισσότερα

Analog vs Digital. Δούρβας Ιωάννης ΙΩΑΝΝΗΣ ΔΟΥΡΒΑΣ

Analog vs Digital. Δούρβας Ιωάννης ΙΩΑΝΝΗΣ ΔΟΥΡΒΑΣ Analog vs Digital Δούρβας Ιωάννης Ηλεκτρονικός Υπολογιστής ψηφιακή μηχανή Ο υπολογιστής αποτελείται από ένα σύνολο (εκατομμύρια) ηλεκτρικά κυκλώματα. Για τα ηλεκτρικά κυκλώματα υπάρχουν μόνο 2 καταστάσεις.

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ 1 Πράξεις με μπιτ 2 ΑριθμητικέςΠράξειςσεΑκέραιους Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση Ο πολλαπλασιασμός

Διαβάστε περισσότερα

Εισαγωγή στην επιστήµη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών

Εισαγωγή στην επιστήµη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών Εισαγωγή στην επιστήµη των υπολογιστών Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών Εισαγωγή Θα δούµε την οργάνωση ενός υπολογιστή Στον επόµενο µάθηµα θα δούµε πως συνδέονται πολλοί Η/Υ για να σχηµατίσουν

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ ΣΗΜΕΡΑ Ιστορική αναδρομή Υπολογιστικές μηχανές

ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ ΣΗΜΕΡΑ Ιστορική αναδρομή Υπολογιστικές μηχανές ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ 1... 11 ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ... 11 ΣΗΜΕΡΑ... 11 1.1 Ιστορική αναδρομή... 13 1.1.1 Υπολογιστικές μηχανές στην αρχαιότητα... 13 1.1.2 17ο έως τον 19ο... 14 1.1.3

Διαβάστε περισσότερα

Αριθμητικά Συστήματα Η ανάγκη του ανθρώπου για μετρήσεις οδήγησε αρχικά στην επινόηση των αριθμών Κατόπιν, στην επινόηση συμβόλων για τη παράσταση

Αριθμητικά Συστήματα Η ανάγκη του ανθρώπου για μετρήσεις οδήγησε αρχικά στην επινόηση των αριθμών Κατόπιν, στην επινόηση συμβόλων για τη παράσταση Αριθμητικά Συστήματα Η ανάγκη του ανθρώπου για μετρήσεις οδήγησε αρχικά στην επινόηση των αριθμών Κατόπιν, στην επινόηση συμβόλων για τη παράσταση τους Κατόπιν, στην επινόηση συμβόλων για τη παράσταση

Διαβάστε περισσότερα

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στην Πληροφορική & τον Προγραμματισμό Ενότητα 3 η : Κωδικοποίηση & Παράσταση Δεδομένων Ι. Ψαρομήλιγκος Χ. Κυτάγιας Τμήμα

Διαβάστε περισσότερα

Τα µπιτ και η σηµασία τους. Σχήµα bit. ΚΕΦΑΛΑΙΟ 1: Αποθήκευση εδοµένων (1/2) 1.7 Αποθήκευση κλασµάτων 1.8 Συµπίεση δεδοµένων 1.9 Σφάλµατα επικοινωνίας

Τα µπιτ και η σηµασία τους. Σχήµα bit. ΚΕΦΑΛΑΙΟ 1: Αποθήκευση εδοµένων (1/2) 1.7 Αποθήκευση κλασµάτων 1.8 Συµπίεση δεδοµένων 1.9 Σφάλµατα επικοινωνίας ΚΕΦΑΛΑΙΟ 1: Αποθήκευση εδοµένων (1/2) ΚΕΦΑΛΑΙΟ 1: Αποθήκευση εδοµένων (2/2) 1.1 Τα bits και ο τρόπος που αποθηκεύονται 1.2 Κύρια µνήµη 1.3 Αποθηκευτικά µέσα 1.4 Αναπαράσταση πληροφοριών ως σχηµάτων bits

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, 2016-2017 ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ Μικροϋπολογιστής Υπολογιστής που χρησιμοποιείται για την είσοδο, επεξεργασία και έξοδο πληροφοριών. Είδη μικροϋπολογιστών:

Διαβάστε περισσότερα

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τα επιμέρους τμήματα Η ΟΜΗ TOY ΥΠΟΛΟΓΙΣΤΗ. Αναπαράσταση μεγεθών. Αναλογική αναπαράσταση ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ ΜΟΝΑ Α ΕΛΕΓΧΟΥ

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τα επιμέρους τμήματα Η ΟΜΗ TOY ΥΠΟΛΟΓΙΣΤΗ. Αναπαράσταση μεγεθών. Αναλογική αναπαράσταση ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ ΜΟΝΑ Α ΕΛΕΓΧΟΥ ΥΠΟΛΟΓΙΣΤΕΣ Ι Η ΟΜΗ TOY ΥΠΟΛΟΓΙΣΤΗ Τα επιμέρους τμήματα ΕΙΣΟ ΟΣ ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ ΕΛΕΓΧΟΥ ΑΡΙΘΜΗΤΙΚΗ ΛΟΓΙΚΗ ΕΞΟ ΟΣ ΚΕΝΤΡΙΚΗ ΕΠΕΞΕΡΓΑΣΙΑΣ 1 2 Αναπαράσταση μεγεθών ΜΕΤΡΟΥΜΕΝΟ ΜΕΓΕΘΟΣ ΑΝΑΛΟΓΙΚΗ ΑΝΑΠΑΡΑΣΤΑΣΗ

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Κ. Δεμέστιχας Εργαστήριο Πληροφορικής Γεωπονικό Πανεπιστήμιο Αθηνών Επικοινωνία μέσω e-mail: cdemest@aua.gr, cdemest@cn.ntua.gr 1 2. ΑΡΙΘΜΗΤΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΜΕΡΟΣ Α 2 Τεχνολογία

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 3ο Αναπαράσταση Αριθμών www.di.uoa.gr/~organosi 1 Δεκαδικό και Δυαδικό Δεκαδικό σύστημα 2 3 Δεκαδικό και Δυαδικό Δυαδικό Σύστημα

Διαβάστε περισσότερα

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Μάθημα 4 ο Πράξεις με bits. Δρ.

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Μάθημα 4 ο Πράξεις με bits. Δρ. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Πληροφορική Ι Μάθημα 4 ο Πράξεις με bits Δρ. Γκόγκος Χρήστος Κατηγορίες πράξεων με bits Πράξεις με δυαδικά ψηφία Αριθμητικές πράξεις

Διαβάστε περισσότερα

ΗΜΜΥ 100 Εισαγωγή στην Τεχνολογία

ΗΜΜΥ 100 Εισαγωγή στην Τεχνολογία University of Cyprus ptical Diagnostics ΗΜΜΥ 100 Εισαγωγή στην Τεχνολογία Διάλεξη 14 60 MB RAM κι όμως με ξέχασες! Ομαδική Εργασία 4 Η Στόχοι και Διαδικασία Καθορίστε Τον σκοπό και τους στόχους Τη διαδικασία

Διαβάστε περισσότερα

Βασικές Έννοιες της Πληροφορικής

Βασικές Έννοιες της Πληροφορικής Βασικές Έννοιες της Πληροφορικής Ηλεκτρονικός Υπολογιστής Αυτόματη ηλεκτρονική μηχανή που δέχεται, φυλάσσει, επαναφέρει, επεξεργάζεται και παρουσιάζει πληροφορίες σύμφωνα με προκαθορισμένες εντολές. Δεδομένα

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Κ. Δεμέστιχας Εργαστήριο Πληροφορικής Γεωπονικό Πανεπιστήμιο Αθηνών Επικοινωνία μέσω e-mail: cdemest@aua.gr, cdemest@cn.ntua.gr 3. ΑΡΙΘΜΗΤΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΜΕΡΟΣ Β Παράσταση Προσημασμένων

Διαβάστε περισσότερα

Αρχιτεκτονική Eckert-von Neumann. Πως λειτουργεί η ΚΜΕ; Κεντρική μονάδα επεξεργασίας [3] ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Αρχιτεκτονική Eckert-von Neumann. Πως λειτουργεί η ΚΜΕ; Κεντρική μονάδα επεξεργασίας [3] ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Αρχιτεκτονική Eckert-von Neumann εισόδου μεταφορά δεδομένων από έξω προς τον Η/Υ εξόδου μεταφορά δεδομένων από τον Η/Υ προς τα έξω ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Κύκλος Μηχανής κεντρικός έλεγχος/πράξεις

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 9 : Ομάδες Εντολών: Ιδιότητες και Λειτουργίες Ευάγγελος Καρβούνης Παρασκευή, 15/01/2016 Τι είναι ομάδα εντολών;

Διαβάστε περισσότερα

Β1.1 Αναπαράσταση Δεδομένων και Χωρητικότητα Μονάδων Αποθήκευσης

Β1.1 Αναπαράσταση Δεδομένων και Χωρητικότητα Μονάδων Αποθήκευσης Β1.1 Αναπαράσταση Δεδομένων και Χωρητικότητα Μονάδων Αποθήκευσης Τι θα μάθουμε σήμερα: Να αναφέρουμε τον τρόπο αναπαράστασης των δεδομένων (δυαδικό σύστημα) Να αναγνωρίζουμε πώς γράμματα και σύμβολα από

Διαβάστε περισσότερα

ΠΛΗ10 Κεφάλαιο 2. ΠΛH10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: : Αριθμητική περιοχή της ALU 2.5: Κυκλώματα Υπολογιστών

ΠΛΗ10 Κεφάλαιο 2. ΠΛH10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: : Αριθμητική περιοχή της ALU 2.5: Κυκλώματα Υπολογιστών ΠΛH10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.3 : Αριθμητική περιοχή της ALU 2.5: Κυκλώματα Υπολογιστών Στόχοι Μαθήματος: Να γνωρίσετε τις βασικές αρχές αριθμητικής των Η/Υ. Ποια είναι τα κυκλώματα

Διαβάστε περισσότερα

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1 Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1 Ενότητα 3: Άλγεβρα Βοole και Λογικές Πράξεις Δρ. Φραγκούλης Γεώργιος Τμήμα Ηλεκτρολογίας Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Πληροφορική. Ενότητα 4 η : Κωδικοποίηση & Παράσταση Δεδομένων. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

Πληροφορική. Ενότητα 4 η : Κωδικοποίηση & Παράσταση Δεδομένων. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Πληροφορική Ενότητα 4 η : Κωδικοποίηση & Παράσταση Δεδομένων Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής Άδειες Χρήσης

Διαβάστε περισσότερα

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών Οργάνωση Υπολογιστών Οργάνωση υπολογιστών ΚΜΕ Κύρια Μνήμη Υποσύστημα εισόδου/εξόδου Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) R1 R2 ΑΛΜ R3 I Καταχωρητές PC Κεντρική Μονάδα Επεξεργασίας Αριθμητική και λογική μονάδα

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Ακαδημαϊκό Έτος 2010-2011 Επιμέλεια Ξενοφών Βασιλάκος Περιεχόμενα Φροντιστηρίου 1. Κωδικοποίηση και Δυαδική Αναπαράσταση 2. Κωδικοποίηση ASCII Κωδικοποίηση Unicode Εισαγωγή

Διαβάστε περισσότερα

Περιεχόμενα. Πρώτο Κεφάλαιο. Εισαγωγή στα Ψηφιακά Συστήματα. Δεύτερο Κεφάλαιο. Αριθμητικά Συστήματα Κώδικες

Περιεχόμενα. Πρώτο Κεφάλαιο. Εισαγωγή στα Ψηφιακά Συστήματα. Δεύτερο Κεφάλαιο. Αριθμητικά Συστήματα Κώδικες Πρώτο Κεφάλαιο Εισαγωγή στα Ψηφιακά Συστήματα 1.1 Αναλογικά και Ψηφιακά Σήματα και Συστήματα... 1 1.2 Βασικά Ψηφιακά Κυκλώματα... 3 1.3 Ολοκληρωμένα κυκλώματα... 4 1.4 Τυπωμένα κυκλώματα... 7 1.5 Εργαλεία

Διαβάστε περισσότερα

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δρ. Χριστόφορος Χριστοφόρου Πανεπιστήμιο Κύπρου - Τμήμα Πληροφορικής Υλικό (Hardware)/Δομή του υπολογιστή Υπολογιστικά συστήματα: Στρώματα 1 Επικοινωνία

Διαβάστε περισσότερα

Εισαγωγή στους Η/Υ και Εφαρμογές

Εισαγωγή στους Η/Υ και Εφαρμογές Πανεπιστήμιο Πατρών Τμήμα Οικονομικών Επιστημών Εισαγωγή στους Η/Υ και Εφαρμογές tzagara@upatras.gr daskalou@upatras.gr https://eclass.upatras.gr/courses/econ1242/ Θέμα Μαθήματος Δομή και λειτουργία (Αρχιτεκτονική)

Διαβάστε περισσότερα

Μάθημα 3: Αρχιτεκτονική Υπολογιστών

Μάθημα 3: Αρχιτεκτονική Υπολογιστών Μάθημα 3: Αρχιτεκτονική Υπολογιστών 3.1 Περιφερειακές μονάδες και τμήμα επεξεργασίας Στην καθημερινή μας ζωή ερχόμαστε συνέχεια σε επαφή με υπολογιστές. Ο υπολογιστής είναι μια συσκευή που επεξεργάζεται

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Πράξεις με μπιτ

Εισαγωγή στην επιστήμη των υπολογιστών. Πράξεις με μπιτ Εισαγωγή στην επιστήμη των υπολογιστών Πράξεις με μπιτ 1 Πράξεις με μπιτ 2 Αριθμητικές Πράξεις σε Ακέραιους Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση 3 Πρόσθεση στη μορφή συμπληρώματος ως προς δύο

Διαβάστε περισσότερα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα 1. Ποια είναι η σχέση της έννοιας του μικροεπεξεργαστή με αυτή του μικροελεγκτή; Α. Ο μικροεπεξεργαστής εμπεριέχει τουλάχιστο έναν μικροελεγκτή. Β. Ο

Διαβάστε περισσότερα

Ενότητα 1. Γνωρίζω τον υπολογιστή ως ενιαίο σύστημα

Ενότητα 1. Γνωρίζω τον υπολογιστή ως ενιαίο σύστημα Ενότητα 1 Γνωρίζω τον υπολογιστή ως ενιαίο σύστημα 1.1 Ψηφιακό Αναλογικό (βιβλίο μαθητή σελ. 104) στη διπλανή φωτογραφία τα χρώματα διαδέχονται το ένα το άλλο χωρίς να μπορούμε να διακρίνουμε τις ενδιάμεσες

Διαβάστε περισσότερα

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ Η Κεντρική Μονάδα Επεξεργασίας (Central Processing Unit -CPU) ή απλούστερα επεξεργαστής αποτελεί το μέρος του υλικού που εκτελεί τις εντολές ενός προγράμματος υπολογιστή

Διαβάστε περισσότερα

Ιεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης

Ιεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής ρχιτεκτονική Υπολογιστών 2016-17 Εικονική Μνήμη (και ο ρόλος της στην ιεραρχία μνήμης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Δευτερεύουσα μνήμη

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων

ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων 2.1 Αρχιτεκτονική Υπολογιστών 2.1 Αρχιτεκτονική Υπολογιστών 2.2 Γλώσσα Μηχανής 2.3 Εκτέλεση προγράµµατος 2.4 Αριθµητικές και λογικές εντολές 2.5 Επικοινωνία µε άλλες συσκευές

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2011-12 Εικονική (και ο ρόλος της στην ιεραρχία μνήμης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης Ιεραρχία η νέα τάση: [2011]

Διαβάστε περισσότερα