Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ (Β Λυκείου) - Βιβλίο Μαθητή (Εμπλουτισμένο)
2.3 Προγραμματισμός 3.2 Πληροφοριακά Συστήματα Επιστροφή στην αρχική σελίδα του μαθήματος
eikona_18

ΕΝΟΤΗΤΑ 3η

Θέματα Εφαρμοσμένης Επιστήμης των Υπολογιστών

ΚΕΦΑΛΑΙA

  • 3.1. Λειτουργικά Συστήματα
  • 3.2. Πληροφοριακά Συστήματα
  • 3.3. Δίκτυα
  • 3.4. Τεχνητή Νοημοσύνη
eikona_19

Λειτουργικά Συστήματα

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

3.1.1 Λογισμικό και Υπολογιστικό Σύστημα

Ένα σύγχρονο υπολογιστικό σύστημα αποτελείται από: το υλικό, τα ηλεκτρονικά μέρη του υπολογιστή και το λογισμικό, το σύνολο των προγραμμάτων που αξιοποιούν και διαχειρίζονται τις λειτουργίες του υλικού του υπολογιστή. Το λογισμικό χωρίζεται στο λειτουργικό σύστημα, το οποίο θα μελετηθεί στη συνέχεια και στο λογισμικό εφαρμογών, τα οποία αποτελούν το σύνολο των προγραμμάτων που επιλύουν τα προβλήματα των χρηστών.

3.1.2 Το Λειτουργικό Σύστημα και οι Αρμοδιότητές του

Λειτουργικό Σύστημα (Λ.Σ.) (Operating System – OS) είναι το σύνολο των προγραμμάτων ενός υπολογιστικού συστήματος το οποίο λειτουργεί ως σύνδεσμος ανάμεσα στα προγράμματα του χρήστη και το υλικό. Το Λ.Σ. είναι υπεύθυνο για τη δημιουργία του περιβάλλοντος επικοινωνίας του χρήστη με το σύστημα, τη διαχείριση και το συντονισμό των εργασιών του συστήματος, καθώς και για την κατανομή των διαθέσιμων πόρων.

Τα Λ.Σ. παρέχουν ένα περιβάλλον στο οποίο εκτελούνται διάφορα προγράμματα, τα οποία στοχεύουν στην ομαλή λειτουργία του υπολογιστικού συστήματος. Οι βασικές αρμοδιότητες ενός Λ.Σ. είναι να:

  • Λειτουργεί ως ενδιάμεσος μεταξύ του ανθρώπου και της μηχανής, μεταφέροντας εντολές ή απαιτήσεις του χρήστη στο υπολογιστικό σύστημα.
  • Διαχειρίζεται τους διαθέσιμους πόρους και να τους κατανέμει στις διάφορες διεργασίες.
  • Ελέγχει την εκτέλεση των προγραμμάτων.

3.1

ΚΕΦΑΛΑΙΟ

eikona_13

Προερωτήσεις

  • Πώς συντονίζεται το υλικό σε ένα σύγχρονο υπολογιστικό σύστημα;
  • Πώς γίνεται η διαχείριση των πληροφοριών, της μνήμης, της Κεντρικής Μονάδας Επεξεργασίας και των περιφερειακών συσκευών;
  • Ποια είναι τα πιο γνωστά Λειτουργικά Συστήματα;
  • Ποια είναι τα βασικά χαρακτηριστικά του Λειτουργικού Συστήματος που χρησιμοποιείτε συχνότερα;

Κατά την εξέλιξή τους έχουν εμφανιστεί διάφορες κατηγορίες Λ.Σ.: Τα Λ.Σ. ομαδικής επεξεργασίας (1η γενιά - δεκαετία ‘50), πολυπρογραμματισμού (2η γενιά - δεκαετία ‘60), καταμερισμού χρόνου (3η γενιά - δεκαετία ‘70) και κατανεμημένης επεξεργασίας (4η γενιά - δεκαετία ‘80 μέχρι σήμερα).

eikona_157

Εικόνα 3.1. Διαστρωμάτωση
ενός Λ.Σ.

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

3.1.3 Η Δομή και η Ιεραρχία του Λειτουργικού Συστήματος

Τα σύγχρονα Λ.Σ. είναι δομημένα σε ιεραρχικά τοποθετημένα επίπεδα (layers). Κάθε επίπεδο εκτελεί μια συγκεκριμένη εργασία και συνεργάζεται με τα δύο γειτονικά του. Στα κατώτερα επίπεδα γίνεται η διαχείριση της μνήμης και της επικοινωνίας με τις περιφερειακές συσκευές του υπολογιστή, ενώ στα ανώτερα γίνεται η διαχείριση των προγραμμάτων που εκτελούν οι χρήστες. Σε ένα Λ.Σ. υπάρχουν τα ακόλουθα επίπεδα (Εικόνα 3.1):

  • Ο Πυρήνας (Kernel), βρίσκεται πλησιέστερα προς το υλικό και αποτελεί τον ενδιάμεσο για να επιτευχθεί η επικοινωνία των προγραμμάτων με το υλικό. Ο πυρήνας «φορτώνεται» πρώτος στην κύρια μνήμη όταν ξεκινάει ο υπολογιστής.
  • Το Σύστημα Αρχείων (File System) διαχειρίζεται τα αρχεία (δίνοντάς τους ονομασία, καταχωρώντας τα, κτλ.) και φροντίζει για τη διάθεσή τους στους χρήστες.
  • Ο Διερμηνευτής Εντολών (Command Interpreter) ή Φλοιός (Shell) είναι το σύνολο των προγραμμάτων, το οποίο επιτρέπει στο χρήστη και τις εφαρμογές του να επικοινωνεί με το Λ.Σ. Η επικοινωνία γίνεται είτε με απευθείας εντολές (command mode - Εικόνα 3.2) είτε μέσω ενός γραφικού περιβάλλοντος διεπαφής (GUI - Graphical User Interface – Εικόνα 3.3).

3.1.4 Βασικές Εργασίες ενός Λ.Σ.

Εργασίες ενός Λ.Σ. αποτελούν η Διαχείριση της Κεντρικής Μονάδας Επεξεργασίας (Κ.Μ.Ε.), η Διαχείριση της Κεντρικής Μνήμης, η Διαχείριση του Συστήματος Αρχείων και η Διαχείριση των Λειτουργιών Εισόδου/Εξόδου.

3.1.4.1 Διαχείριση της Κ.Μ.Ε.

Το χαρακτηριστικό των σύγχρονων Λ.Σ. είναι ο πολυπρογραμματισμός (multiprogramming) και η πολυδιεργασία (multitasking). Στην πρώτη περίπτωση το Λ.Σ. μπορεί να εκτελεί ταυτόχρονα περισσότερα από ένα προγράμματα (για παράδειγμα, την ώρα που η Κ.Μ.Ε. περιμένει

Θέματα Θεωρητικής
Επιστήμης των Υπολογιστών

eikona_158

Εικόνα 3.2. Επικοινωνία με απευθείας εντολές (Λ.Σ. MS DOS)

eikona_159

Εικόνα 3.3. Επικοινωνία με γραφικό περιβάλλον Διεπαφής (Λ.Σ. MS Windows)

eikona_160

Μια από τις βασικές έννοιες στα Λ.Σ. είναι η έννοια της διεργασίας (process).

Μια διεργασία είναι ένα πρόγραμμα ή ένα αυτόνομο τμήμα προγράμματος υπό εκτέλεση από το σύστημα.

Το πρόγραμμα διαφέρει από τη διεργασία στο ότι είναι μικρότερο, μιας και η διεργασία περιέχει, εκτός από το πρόγραμμα, και στοιχεία συστήματος για την εκτέλεση του κώδικα.

απάντηση από μια περιφερειακή συσκευή, αυτός o χρόνος «αναμονής» μπορεί να αξιοποιηθεί από ένα άλλο πρόγραμμα που είναι φορτωμένο στην κύρια μνήμη), ενώ στη δεύτερη περίπτωση το Λ.Σ. μπορεί να εκτελεί ταυτόχρονα περισσότερες από μία εργασίες (για παράδειγμα, μπορεί να γίνονται παράλληλα εκτυπώσεις και υπολογισμοί). Η όλη διαδικασία βασίζεται σε έναν αλγόριθμο χρονοπρογραμματισμού, ο οποίος στοχεύει στη μεγιστοποίηση της αποδοτικότητας και της «δίκαιης» χρήσης της Κ.Μ.Ε. από το μέγιστο αριθμό των επεξεργαζόμενων διεργασιών.

3.1.4.2 Διαχείριση της Μνήμης

Η πολυδιεργασία προϋποθέτει ότι στην κεντρική μνήμη είναι φορτωμένα περισσότερα του ενός προγράμματα προς εκτέλεση από την Κ.Μ.Ε. Θα πρέπει, λοιπόν, να γίνει η διαχείριση της κύριας μνήμης με τέτοιο τρόπο, ώστε να επιτευχθεί ο αποτελεσματικός διαμοιρασμός της μεταξύ των διαφόρων προγραμμάτων. Το τμήμα του Λ.Σ. που διαχειρίζεται την κύρια μνήμη είναι ο διαχειριστής μνήμης (memory manager). Οι εργασίες που επιτελεί ο διαχειριστής μνήμης είναι:

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

3.1.4.3 Διαχείριση του Συστήματος Αρχείων

Το σύστημα αρχείων είναι το μέρος του Λ.Σ. με το οποίο ο χρήστης έρχεται σε άμεση επαφή. Το Λ.Σ. συνήθως οργανώνει τα αρχεία του σε καταλόγους ή φακέλους (directories ή folders). Κάθε κατάλογος αποτελείται από αρχεία, υποκαταλόγους ή υποφακέλους, δημιουργώντας μία δενδροειδή μορφή.

Ένα σύστημα αρχείων του Λ.Σ. προσφέρει στον χρήστη ένα εικονικό περιβάλλον διαχείρισης, το οποίο του δίνει τη δυνατότητα να εκτελεί μία σειρά από πράξεις όπως η δημιουργία (με προσδιορισμό ονόματος και τύπου), η διαγραφή, η μετονομασία, η αντιγραφή και το κλείσιμο αρχείων. Επιπλέον, είναι δυνατή η τροποποίηση του περιεχομένου ή η αντιγραφή του περιεχομένου ενός αρχείου σε ένα άλλο.

3.1.4.4 Διαχείριση Λειτουργιών Εισόδου/Εξόδου

Το τμήμα του Λ.Σ. το οποίο ασχολείται με τις διαδικασίες εισόδου/εξόδου μεταξύ του κεντρικού μέρους και των εξωτερικών προς αυτό συσκευών εξασφαλίζει τη διασύνδεση των συσκευών με το κεντρικό

3.1

ΚΕΦΑΛΑΙΟ

Λειτουργικά
Συστήματα

eikona_161

Κάθε πρόγραμμα προτού εκτελεστεί από την κεντρική μνήμη βρίσκεται στην περιφερειακή μνήμη (σκληρός δίσκος), ενώ κατά τη διάρκεια εκτέλεσής του στην κεντρική μνήμη το πρόγραμμα διαβάζει από αυτήν και γράφει δεδομένα σε αυτήν.

eikona_162

Σ’ έναν υπολογιστή οι πληροφορίες αποθηκεύονται σε περιφερειακές μονάδες (π.χ. σε σκληρούς δίσκους) όπου τα στοιχεία διατηρούνται και μετά τη διακοπή της παροχής ρεύματος. Εκεί αποθηκεύονται τα στοιχεία ως συλλογές δεδομένων (αρχεία-files), τη διαχείριση των οποίων αναλαμβάνει μέρος του Λ.Σ. που καλείται Σύστημα Αρχείων (file system).

Με τον όρο Είσοδος (Input) αναφερόμαστε στη ροή δεδομένων προς την Κ.Μ.Ε. ενώ με τον όρο Έξοδος (Output) αναφερόμαστε στη ροή δεδομένων από την Κ.Μ.Ε. προς τις περιφερειακές συσκευές.

σύστημα και την ομαλή επικοινωνία. Επίσης, αναλαμβάνει να διαχειριστεί τις εντολές που εκτελούνται και τα σφάλματα που παρουσιάζονται.

Στις αρμοδιότητες του συγκεκριμένου μέρους του Λ.Σ. είναι η αποδοτική διαχείριση των περιφερειακών μονάδων και ο ορισμός της σειράς ικανοποίησης των διαφόρων δραστηριοτήτων, όπως των αιτημάτων εγγραφής ή ανάγνωσης. Έτσι, οι συσκευές διακρίνονται σε διαμοιραζόμενες (shared) και αποκλειστικές (dedicated). Τις διαμοιραζόμενες συσκευές μπορούν να τις χρησιμοποιούν πολλοί χρήστες ταυτόχρονα, όπως οι δίσκοι, ενώ τις αποκλειστικές μπορεί να τις χρησιμοποιεί ένας χρήστης κάθε στιγμή, όπως οι εκτυπωτές οι οποίοι κατά τη διάρκεια της χρήσης τους δεν επιτρέπεται να χρησιμοποιούνται από άλλο πρόγραμμα.

3.1.5Γνωστά Λειτουργικά Συστήματα

Έχουν αναπτυχθεί διάφορα Λ.Σ. τα οποία αξιοποιούν κατάλληλα την αρχιτεκτονική των επεξεργαστών. Στη συνέχεια παρατίθενται τα πιο γνωστά από αυτά.

Το Unix αναπτύχθηκε στα εργαστήρια Bell Labs της ΑΤ&Τ το 1969. Το μεγαλύτερο μέρος του έχει αναπτυχθεί σε γλώσσα προγραμματισμού C. Το Unix αποτελεί ένα Λ.Σ. πολυδιεργασίας, καταμερισμού χρόνου (timesharing), πολλών χρηστών (multiuser), και με φορητότητα (portability) - δηλαδή εύκολη εγκατάσταση σε διαφορετικού τύπου συστήματα.

Το MS-DOS (Microsoft Disk Operating System) είναι Λ.Σ. στο οποίο οι εντολές του χρήστη πληκτρολογούνται σε μία γραμμή. Αναπτύχθηκε από την εταιρεία Microsoft το 1981 για λογαριασμό της εταιρείας ΙΒΜ (Εικόνα 3.2).

Τα MS Windows της Microsoft διαθέτουν γραφικό περιβάλλον διεπαφής χρήστη παραθυρικού τύπου (Εικόνα 3.3). Πρόκειται για Λ.Σ. πολλαπλών διεργασιών και πολλαπλών χρηστών. Από το 1985 μέχρι σήμερα έχουν αναπτυχθεί διάφορες εκδόσεις των Windows (π.χ. 95, 98, XP, 7, 8.1 κ.α.).

Το Linux είναι ένα λειτουργικό σύστημα τύπου Unix, το οποίο δημιουργήθηκε από τον Linus Torvalds το 1991. Ο πηγαίος κώδικάς του είναι «ανοικτός», με αποτέλεσμα να αναπτύσσεται συνεχώς από μια μεγάλη κοινότητα χρηστών (Εικόνα 3.4).

Το Mac OS X έχει ως βάση το Λ.Σ. Unix και διανέμεται αποκλειστικά για χρήση με τους υπολογιστές Mac της εταιρείας Apple. Το Mac OS X είναι η εξέλιξη του Mac OS το οποίο ήταν το αρχικό Λ.Σ. της Apple (1984-1999). Τα OS X διακρίνονται για τα πρωτότυπα γραφικά περιβάλλοντα διεπαφής τους (Εικόνα 3.5).

Το Android χρησιμοποιείται κυρίως σε συσκευές κινητής τηλεφωνίας και tablets και τρέχει τον πυρήνα του Λ.Σ. Linux. Αρχικά αναπτύχθηκε

ΕΝΟΤΗΤΑ

Θέματα Θεωρητικής
Επιστήμης των Υπολογιστών

eikona_163

Εικόνα 3.4. Το Λ.Σ. Linux είναι ΕΛ/ΛΑΚ και μπορεί να τρέξει μέσα από οπτικό δίσκο (LiveCD) χωρίς να απαιτείται μόνιμη εγκατάσταση.

eikona_164

Εικόνα 3.5. Λ.Σ. OS X
της Apple.

eikona_165

Εικόνα 3.6. Λ.Σ. Android της Google

από την Google (2007) και αργότερα από την Open Handset Alliance (Εικόνα 3.6).

Ανακεφαλαίωση

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

Ερωτήσεις - Δραστηριότητες - Θέματα προς συζήτηση
  1. Ποιο ρόλο επιτελεί το Λειτουργικό Σύστημα σε έναν υπολογιστή;
  2. Να αναφέρετε ονομαστικά τις μεθόδους διαχείρισης των περιφερειακών συσκευών από το Λ.Σ.
  3. Δείτε ποια Λ.Σ. διαθέτει το εργαστήριο υπολογιστών του σχολείου σας και εντοπίστε ομοιότητες και διαφορές.
  4. Αν στην τάξη σας βρίσκονται μαθητές με διαφορετική καταγωγή, μελετήστε τις ασυμβατότητες των Λ.Σ. μεταξύ διαφορετικών γλωσσών.
  5. Αναζητήστε το LiveCD του Linux και δοκιμάστε το σε κάποιους υπολογιστές του σχολικού εργαστηρίου.
  6. Αναζητήστε πληροφορίες για Λ.Σ. τα οποία είναι φιλικά στη χρήση τους από Άτομα με Αναπηρία (ΑμεΑ).
  7. Ποια από τα παρακάτω αποτελούν εργασίες ενός Λ.Σ.;
    • Α. Εκτύπωση
    • Β. Διαχείριση μνήμης
    • Γ. Επεξεργασία κειμένου
    • Δ. Διαχείριση Κ.Μ.Ε.

3.1

ΚΕΦΑΛΑΙΟ

Λειτουργικά
Συστήματα

eikona_167

Χρήσιμοι Υπερσύνδεσμοι

http://www.android.com

Διαδικτυακός τόπος για το Λ.Σ. Android.

http://www.linux.gr/news

Διαδικτυακός τόπος της ελληνικής κοινότητας Linux.

eikona_166

Λέξεις κλειδιά

Διεπαφή, Σύστημα Αρχείων, Διαχείριση Κ.Μ.Ε., Είσοδος/Έξοδος, Πυρήνας.