Κεφάλαιο 5 | Ενότητα1  | Eρωτήσεις Επισκόπησης | Επόμενο | Λεξικό όρων

Είσοδος/έξοδος (Ι/Ο) και η χρησιμότητά της

Η Είσοδος/Εξοδος (θα την αποκαλούμε από εδώ και στο εξής εν συντομία Ι/Ο - Ιnput/Output), αποτελεί το τμήμα του υπολογιστικού συστήματος με το οποίο το σύστημα είναι σε θέση να ανταλλάξει δεδομένα με το περιβάλλον του, είτε με άλλους υπολογιστές είτε με τον άνθρωπο-χρήστη. Οι συσκευές εκείνες που απαρτίζουν το τμήμα Ι/Ο του υπολογιστή και με τις οποίες πραγματοποιείται η ανταλλαγή των δεδομένων ονομάζονται συσκευές εισόδου/εξόδου (συσκευές Ι/Ο).

Σχήμα 5.1.1. Τυπική συλλογή συσκευών I/O.  -Τυπική συλλογή συσκευών I/O. Παρουσιάζεται η δομή ενός συστήματος με τις συσκευές Ι/Ο του. Οι συνδέσεις ανάμεσα στις συσκευές I/O, τον επεξεργαστή και τη μνήμη ονομάζονται αρτηρίες (buses).

Η οπτική γωνία απ΄ την οποία αντιμετωπίζουμε το τμήμα Ι/Ο μπορεί να διαφέρει, π.χ. οι ηλεκτρολόγοι μηχανικοί το βλέπουν σαν ένα σύνολο από τσιπ (ολοκληρωμένα κυκλώματα), καλώδια, τροφοδοτικά, ηλεκτροκινητήρες και άλλα φυσικά στοιχεία από τα οποία αποτελείται. Οι προγραμματιστές το βλέπουν σύμφωνα με τον τρόπο που αυτό επικοινωνεί με το λογισμικό, δηλαδή τις εντολές που δέχεται, τις λειτουργίες που εκτελεί και τα σφάλματα που μπορεί να αναφέρει στο λογισμικό.
Συγκεκριμένα, το σύστημα αρχείων (file system) ασχολείται με συσκευές Ι/Ο αφήνοντας το τμήμα που εξαρτάται από την κάθε συσκευή σε λογισμικό χαμηλότερου επιπέδου, τους οδηγούς συσκευών (device drivers).
Οι μονάδες Ι/Ο συνήθως αποτελούνται από το μηχανικό και το ηλεκτρονικό μέρος (ελεγκτής συσκευής ή προσαρμογέας). Τις περισσότερες φορές το λειτουργικό σύστημα συνεργάζεται με τον ελεγκτή ή προσαρμογέα και όχι με τη συσκευή.

Το Ι/Ο είναι απαραίτητο και αναπόσπαστο τμήμα ενός υπολογιστικού συστήματος. Μπορούμε να υποθέσουμε ότι ένας υπολογιστής χωρίς συσκευές εισόδου/εξόδου είναι σαν ένα αυτοκίνητο χωρίς ρόδες. Γι’αυτό η εξέλιξη και η τελειοποίηση των συσκευών Ι/Ο ώστε να γίνουν πιο γρήγορες και αποδοτικές είναι επιτακτική. Αλλωστε , ο χρήστης  ενός υπολογιστή κυρίως ενδιαφέρεται για τον όσο δυνατό μικρότερο χρόνο απόκρισης στις εργασίες που του έχει αναθέσει.

Επιπλέον, σε μία εποχή που οι μηχανές - από τους προσωπικούς υπολογιστές της χαμηλής κατηγορίας (low-end PCs) έως τους μεγάλους υπολογιστές (mainframes) και ακόμα τους υπερυπολογιστές (supercomputers) - κατασκευάζονται με την ίδια βασική τεχνολογία μικροεπεξεργαστών, οι δυνατότητες του συστήματος I/O είναι συχνά ένα από τα χαρακτηριστικά εκείνα που κάνει ένα σύστημα ξεχωριστό. Σχεδόν όλοι οι μικρο-υπολογιστές και οι μίνι-υπολογιστές χρησιμοποιούν το μοντέλο μονής αρτηρίας (single bus) για την επικοινωνία ανάμεσα στην ΚΜΕ (CPU) και στις συσκευές Ι/Ο. Οι μεγάλοι υπολογιστές (large mainframes) χρησιμοποιούν ένα διαφορετικό μοντέλο, με πολλαπλές αρτηρίες και εξειδικευμένους υπολογιστές Ι/Ο που καλούνται δίαυλοι Ι/Ο, απαλλάσσοντας την ΚΜΕ από ένα μέρος του φορτίου αυτού.
Πολλές από τις πρόσφατες υλοποιήσεις στη βιομηχανία των υπολογιστών είναι συναρπαστικές, τόσο για τις νέες δυνατότητές τους σε I/O, όσο και για την ισχύ του επεξεργαστή τους. Αυτό συμβαίνει επειδή οι μηχανές αλληλεπιδρούν με τους ανθρώπους μέσω του I/O.


ΔΡΑΣΤΗΡΙΟΤΗΤΑ 1

Είναι γεγονός πως η τεχνολογική ανάπτυξη των συσκευών Ι/Ο ακολουθεί πιο αργούς ρυθμούς σε σύγκριση με τη εξέλιξη των υπολοίπων τμημάτων ενός υπολογιστικού συστήματος. Μπορείτε να εξηγήσετε σε 10 το πολύ γραμμές τους λόγους για τους οποίους συμβαίνει αυτό; Να συγκρίνετε την απάντησή σας με την παράγραφο που ακολουθεί: «Η παραμέληση της Εισόδου / Εξόδου».

Η παραμέληση της Εισόδου/Εξόδου
Η παραμέληση των συσκευών Ι/Ο οφείλεται σε διάφορους λόγους όπως:

  • Η ανάπτυξη του Ι/Ο πραγματοποιείται με βραδείς ρυθμούς σε σχέση με τα υπόλοιπα τμήματα ενός υπολογιστικού συστήματος.
  • Οι δυσκολίες που παρουσιάζουν τόσο η εκτίμηση της απόδοσης όσο και ο σχεδιασμός ενός συστήματος Ι/Ο έχουν κλονίσει το κύρος του Ι/Ο.
  • Η έρευνα επικεντρώνεται στο σχεδιασμό των επεξεργαστών, ενώ η προκατάληψη εναντίον του Ι/Ο μορφοποιείται στο ευρύτερα χρησιμοποιούμενο μέτρο για την απόδοση ενός υπολογιστικού συστήματος, το χρόνο επεξεργαστή ή χρόνο CPU, του οποίου η τιμή δεν εξαρτάται από την απόδοση του συστήματος Ι/Ο.

Ωστόσο, η ποιότητα του Ι/Ο ενός υπολογιστή δε μπορεί να μετρηθεί με το χρόνο CPU, επειδή αυτός εξορισμού αγνοεί το Ι/Ο. Η σχέση του χρόνου CPU και του ολικού χρόνου φαίνεται στο αμέσως παρακάτω, ενδεικτικό παράδειγμα. Η δεύτερης-κλάσης αντιμετώπιση που τυγχάνει το Ι/Ο είναι εμφανής ακόμα και στην ονομασία των συσκευών Ι/Ο, που συχνά αποκαλούνται “περιφερειακές”. Η μελέτη του νόμου του Amdahl θα πρέπει να μας υπενθυμίσει πως η παραμέληση του I/O είναι επικίνδυνη.

ΔΡΑΣΤΗΡΙΟΤΗΤΑ 2

Θυμάστε τι είναι ο χρόνος της ΚΜΕ και με ποιον τρόπο υπολογίζεται; Για περισσότερες λεπτομέρειες καλό θα ήταν να ανατρέξετε στο 1ο κεφάλαιο: «Βασικές αρχές υπολογιστικών συστημάτων».

ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 2

Παράδειγμα

H απόδοση του Ι/Ο μπορεί να καθορίσει σε σημαντικό βαθμό και εν τέλει να περιορίσει την ολική απόδοση και αποτελεσματικότητα του συστήματος, όπως φαίνεται και στο αποτέλεσμα του παραπάνω παραδείγματος όπου η απόδοση του συστήματος εισόδου/εξόδου φτάνει να ρυθμίζει σχεδόν το μισό χρόνο λειτουργίας του συστήματος.

ΔΡΑΣΤΗΡΙΟΤΗΤΑ 3

Να εξηγήσετε το λόγο για τον οποίο ο χρόνος ΚΜΕ είναι ένα σημαντικό επιχείρημα που χρησιμοποιείται εναντίον της ανάπτυξης του Ι/Ο.

ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 3

ΔΡΑΣΤΗΡΙΟΤΗΤΑ 4

Υποθέστε ότι έχουμε μία διαφορά μεταξύ του χρόνου του επεξεργαστή και του χρόνου απόκρισης κατά 10% , και ότι επιταχύνουμε τον επεξεργαστή 10 φορές, ενώ παραμελούμε το Ι/Ο. Κατά πόσο θα επιταχυνθεί στην πραγματικότητα το σύστημά μας και τι ποσοστό της δύναμης του επεξεργαστή θα χαθεί; Τι θα γινόταν αν επιταχύναμε τον επεξεργαστή 100 φορές;

ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 4