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

Σχετικά έγγραφα
Λειτουργικά Συστήματα (1 ο μέρος)

3/11/2014. Windows Unix. Linux. Mac OS Solaris. J. Glenn Brookshear

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

Κεφάλαιο 3.1: Λειτουργικά Συστήματα. Επιστήμη ΗΥ Κεφ. 3.1 Καραμαούνας Πολύκαρπος

Κεφάλαιο 4 Λογισμικό συστήματος. Εφαρμογές Πληροφορικής Κεφ.4 Καραμαούνας Πολύκαρπος 1

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

Κεφάλαιο 4. Λογισμικό Συστήματος

Κεφάλαιο 4: Λογισμικό Συστήματος

Ενότητα 3 - Θέματα Εφαρμοσμένης Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

Πληροφορική 2. Λειτουργικά Συστήματα

Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, μνήμης και Ε/Ε)

Τι είναι ένα λειτουργικό σύστημα (ΛΣ); Μια άλλη απεικόνιση. Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι

ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα

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

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

Πληροφορική I. "Λογισμικό (Software)" B. Φερεντίνος

Λειτουργικά Συστήματα Ι. Κεφάλαιο 1 Βασικές Έννοιες Λειτουργικών Συστημάτων

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

Λειτουργικά Συστήματα 1.1 Τι είναι Λειτουργικό Σύστημα (Operating System)

Μάθημα 1 ο ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

ver Επεξεργαστές κειμένου, λογιστικών φύλλων, παρουσιάσεων Οδηγοί συσκευών (Device Drivers)

Λιβανός Γιώργος Εξάμηνο 2017Β

Κεφάλαιο 5. Κεφ. 5 Λειτουργικά Συστήματα 1

Οργάνωση ενός σύγχρονου Υπολογιστικού Συστήματος ή Ηλεκτρονικού Υπολογιστή (Η/Υ) Τα σύγχρονα συστήματα Η/Υ έχουν την παρακάτω οργάνωση:

3.1 Λειτουργικό Σύστηµα. Λειτουργικό Σύστηµα (2) ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα. Ο υπολογιστής σαν σκέτο hardware έχει περιορισµένη χρησιµότητα

Κεφάλαιο 3. Διδακτικοί Στόχοι

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία

12/5/18. συστημάτων. Το λογισµικό συστηµάτων. Κεφάλαιο 5

Γεωγραφικά Συστήµατα Πληροφοριών και Αρχές Τηλεπισκόπησης

ΕΙΣΑΓΩΓΗ. Παρέχει µια διεπαφή (interface) ανάµεσα στο υλισµικό και στα προγράµµατα εφαρµογών/χρηστών.

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

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 1 : Λειτουργικά συστήματα. Δρ.

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ

ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Λειτουργικά Συστήματα Ι. Διδάσκων: Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι

Προγραμματισμός Η/Υ. Λογισμικό. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

ΛΟΓΙΣΜΙΚΟ (software)

ΚΕΦΑΛΑΙΟ 2 - ΛΟΓΙΣΜΙΚΟ

Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ

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

[4] Στόχοι. Λογισμικό. Υπολογιστικά συστήματα: Στρώματα

ΚΕΦΑΛΑΙΟ 4 ΛΟΓΙΣΜΙΚΟ ΣΥΣΤΗΜΑΤΟΣ. ΔΗΜΗΤΡΗΣ ΜΑΝΩΛΗΣ ΦΥΣΙΚΟΣ-MSc

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

Κεφάλαιο 3: Λειτουργικά Συστήµατα

Κεφάλαιο 3: Λειτουργικά Συστήματα

Μάθημα 8: Διαχείριση Μνήμης

Κεφάλαιο 2: Λογισμικό (Software) Εφαρμογές Πληροφορικής Κεφ. 2 Καραμαούνας Πολύκαρπος

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

Εισαγωγή στην Πληροφορική Προγραμματισμός-Λειτουργικά

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Λειτουργικά συστήματα

1 ο ΓΥΜΝΑΣΙΟ ΘΕΡΜΗΣ. Πληροφορική Α' Γυμν. Το Λειτουργικό Σύστημα του Υπολογιστή

Βασίλειος Κοντογιάννης ΠΕ19

Ι.Ε.Κ. Χαϊδαρίου ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ. Σημειώσεις Θεωρίας

Λειτουργικά συστήµατα. Λογισμικό Συστήματος 1

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

Λογισμικό - Προγράμματα

Λειτουργικά συστήματα πραγματικού χρόνου

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΕΙΣΑΓΩΓΗ

Εξετάσεις Προόδου 8/1/2014 Τεχνικός Εφαρμογών Πληροφορικής (Πολυμέσα/ Web designer - developper/video games)

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

ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήματα

Εισαγωγή στα Λειτουργικά συστήματα Ι. Καθηγητής Κώστας Αναγνωστόπουλος

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

Λειτουργικό συστημάτων 1

Μάθημα 10 ο ΔΙΑΧΕΙΡΙΣΗ ΕΙΣΟΔΟΥ ΕΞΟΔΟΥ (INPUT/OUTPUT)

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

2. Σκοποί και Λειτουργίες των ΛΣ. Λειτουργικά Συστήματα Η/Υ. Περίληψη. Ι. Προστασία Υλικού ΚΕΦΑΛΑΙΟ 2 - ΕΞΕΛΙΞΗ ΚΑΙ ΣΚΟΠΟΙ ΛΣ

Κεφάλαιο 3 Λειτουργικά Συστήματα Β ΕΠΑΛ

Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 4

Κεφάλαιο 5Β (επανάληψη) Εισαγωγή στην Πληροφορική. Τυπικοί χρόνοι πρόσβασης. Μέσος χρόνος πρόσβασης. Ταχύτητα µεταφοράς δεδοµένων

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

Σκοπός Μαθήματος. Λειτουργικά Συστήματα Η/Υ. Γενικές Πληροφορίες. Στόχοι Μαθήματος ΚΕΦΑΛΑΙΟ 1 - ΕΙΣΑΓΩΓΗ. Θεωρία: Εργαστήριο: Κεφάλαιο 1 «Εισαγωγή»

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

Συστήματα Πληροφοριών Διοίκησης Ενότητα 5: Λογισμικό Πληροφοριακών Συστημάτων

MULTIPLE CHOICE REVISION: ΜΑΘΗΜΑ 1-2

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)

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

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

Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας

Μάθημα 6 ο. Χρονοδρομολόγηση (Scheduling)

Linux Terminal Server Project

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

Εισαγωγή στο λειτουργικό σύστηµα Unix

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

Υποστήριξη Λ.Σ. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

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

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

ΗΛΕΚΤΡΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ

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

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

Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 1

Σημειώσεις : Χρήστος Μουρατίδης. Κάντε κλικ για έναρξη

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

Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES)

Το εσωτερικό ενός PC. Τεχνολογία Η/Υ & Πληροφοριών - 05 Κεντρική μονάδα Χουρδάκης Μανόλης

Φουκαράκη Χρυσούλα - ΓΕΛ Γαζίου

Υποδομή ΤΠ: Υλικό και λογισμικό

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία

Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ. Διάλεξη 4 η. Βασίλης Στεφανής

Transcript:

Λειτουργικά Συστήματα (1 ο μέρος) Η Επιστήμη των Υπολογιστών: Μια Ολοκληρωμένη Παρουσίαση J. Glenn Brookshear

Κεφάλαιο 3: Λειτουργικά Συστήματα Ιστορικό των λειτουργικών συστημάτων Αρχιτεκτονική λειτουργικών συστημάτων Συντονισμός των δραστηριοτήτων του υπολογιστή Χειρισμός ανταγωνισμού μεταξύ διεργασιών Ασφάλεια 3-2

Ενέργειες των Λειτουργικών Συστημάτων Μεταμορφώνουν το υλικό του υπολογιστή σε χρήσιμο εργαλείο. Θα δούμε τι κάνουν και πως το κάνουν Συντονίζουν τις εσωτερικές δραστηριότητες ενός υπολογιστής και επιτηρούν την επικοινωνία με τον έξω κόσμο Επιβλέπουν τη λειτουργία του υπολογιστή Αποθηκεύουν και ανακτούν αρχεία Προγραμματίζουν χρονικά την εκτέλεση των προγραμμάτων Συντονίζουν την εκτέλεση των προγραμμάτων 3-3

Παραδείγματα Λειτουργικών Windows Unix Συστημάτων Eίναι πυρήνας για δύο άλλα λειτουργικά: Linux Mac OS Solaris Αναπτύχθηκε ερασιτεχνικά -> σήμερα διατίθεται εμπορικά 3-4

Ιστορικό Λειτουργικών Συστημάτων Εκτέλεση μιας εργασίας [job] Ομαδική επεξεργασία Αλληλεπιδραστική επεξεργασία Απαιτεί επεξεργασία πραγματικού χρόνου Χρονομερισμός/Πολυδιεργασία Υλοποιείται από τον πολυπρογραμματισμό Μηχανές με πολλούς επεξεργαστές 3-5

Ιστορικό Λειτουργικών Συστημάτων Δεκαετίες 1940 1950 Μη αποδοτικοί και μη ευέλικτοι υπολογιστές Εκτέλεση κάθε προγράμματος [job] σαν μεμονωμένη δραστηριότητα Ο υπολογιστής υπό τον έλεγχο του χρήστη Δέσμευση του υπολογιστή από κάθε χρήστη μέσω ειδικών εντύπων 3-6

Ιστορικό Λειτουργικών Συστημάτων Εμφάνιση λειτουργικών συστημάτων με στόχο τη: Διευθέτηση των προγραμμάτων Εξομάλυνση της μετάβασης από εργασία σε εργασία Πρώτες εξελίξεις μέσω των λειτουργικών συστημάτων Διαχωρισμός χρηστών και εξοπλισμού Εξάλειψη της ανάγκης φυσικής παρουσίας των χρηστών στην αίθουσα του υπολογιστή Εμφάνιση του ρόλου του «χειριστή» 3-7

Ιστορικό Λειτουργικών Συστημάτων Ομαδική Επεξεργασία [batch processing] Συγκέντρωση εργασιών [jobs] προς εκτέλεση σε ομάδες ή δέσμες [batches] Εκτέλεση χωρίς αλληλεπίδραση με το χρήστη οδηγίες σχετικές με απαιτήσεις του προγράμματος, γραμμένες σε job control language Ουρά εργασιών, FIFO όχι αυστηρή, προτεραιότητες Αποθηκεύει και τις οδηγίες για κάθε εργασία και τις εκτυπώνει όταν έρθει η σειρά της 3-8

Ομαδική επεξεργασία 3-9

Ιστορικό Λειτουργικών Συστημάτων Μειονεκτήματα Ομαδικής Επεξεργασίας Χειριστής μεσάζων μεταξύ χρήστη κ υπολογιστή Αδυναμία αλληλεπίδρασης μεταξύ χρήστη και υπολογιστή Αποδεκτή για εφαρμογές χωρίς ανάγκη αλληλεπίδρασης με χρήστη, τα δεδομένα και οι αποφάσεις επεξεργασίας καθορίζονται από πριν, π.χ. μισθοδοσία Μη αποδεκτή για εφαρμογές που απαιτούν αλληλεπίδραση με το χρήστη, π.χ. κρατήσεις θέσεων, επεξεργασία κειμένου, παιχνίδια 3-10

Ιστορικό Λειτουργικών Συστημάτων Ανάπτυξη νέων λειτουργικών συστημάτων (1/2) Υποστηρίζουν αλληλεπιδραστική επεξεργασία Διάλογος με χρήστη μέσω απομακρυσμένων τερματικών ή σταθμών εργασίας Τερματικά ->εξελίχθηκαν σε workstations και PC 3-11

Αλληλεπιδραστική επεξεργασία 3-12

Ιστορικό Λειτουργικών Συστημάτων Ανάπτυξη νέων λειτουργικών συστημάτων (2/2) Τα λειτουργικά συστήματα που υποστηρίζουν αλληλεπιδραστική επεξεργασία εκτελούν γρήγορα τις ενέργειες του υπολογιστή και συντονίζονται με τις ανάγκες του χρήστη και όχι το αντίστροφο Επεξεργασία Πραγματικού Χρόνου (Real time processing) Οι εργασίες εκτελούνται σε πραγματικό χρόνο δηλ. σε προθεσμίες που καθορίζονται από το περιβάλλον του υπολογιστή (πραγματικός κόσμος) 3-13

Ερωτήσεις Ποιες από τις παρακάτω δραστηριότητες απαιτούν επεξεργασία πραγματικού χρόνου; Εκτύπωση ταχυδρομικών ετικετών Παίξιμο παιχνιδιού στον υπολογιστή Αναπαραγωγή ηχητικής εγγραφής mp3 Εκτέλεση προγράμματος πρόβλεψης της οικονομίας για το 2017 3-14

Ιστορικό Λειτουργικών Συστημάτων Ανάγκη εξυπηρέτησης πολλών χρηστών Αν το λειτουργικό εκτελεί μια εργασία κάθε φορά, μόνο ένας χρήστης λαμβάνει ικανοποιητικές υπηρεσίες πραγματικού χρόνου Λύση: Χρονομερισμός (time sharing)μέσω πολυπρογραμματισμού Διαίρεση του χρόνου σε χρονοθυρίδες Εκτέλεση εργασίας σε μια χρονοθυρίδα τη φορά Γρήγορη εναλλαγή εργασιών εμπρός και πίσω -> ψευδαίσθηση ταυτόχρονης εκτέλεσης πολλών εργασιών Τα πρώτα χρονομεριστικά συστήματα, εξυπηρετούσαν μέχρι και 30 χρήστες ταυτόχρονα 3-15

Ιστορικό Λειτουργικών Συστημάτων Ανάγκη εξυπηρέτησης πολλών χρηστών Χρονομερισμός (Time Sharing) vs. Πολυδιεργασία (Multi-tasking) Τεχνικές πολυπρογραμματισμού χρησιμοποιούνται σε μονοχρηστικά συστήματα και πολυχρηστικά συστήματα Πολυχρηστικά, χρονομεριστικά συστήματα παραμερίζουν την ανάγκη χειριστή ως μεσάζοντα -> νέος ρόλος: διαχειριστής συστήματος 3-16

Ιστορικό Λειτουργικών Συστημάτων Ανάγκη εξυπηρέτησης πολλών χρηστών Πολυχρηστικά, χρονομεριστικά συστήματα συνήθης διευθέτηση: ένας μεγάλος κεντρικός Η/Υ με πολλούς σταθμούς εργασίας. Άμεση επικοινωνία των χρηστών με τον υπολογιστή παραμερίζουν την ανάγκη χειριστή ως μεσάζοντα -> νέος ρόλος: διαχειριστής συστήματος 3-17

Ιστορικό Λειτουργικών Συστημάτων Ρόλος Διαχειριστή Συστήματος Δεν περιλαμβάνει χειρισμό Η/Υ για εξυπηρέτηση τακτικών αιτημάτων χρηστών. Περιλαμβάνει Επίβλεψη και διεκπεραίωση εγκατάστασης νέου εξοπλισμού και λογισμικού Επιβολή τοπικών κανονισμών Π.χ. Δημιουργία νέων λογαριασμών, όρια αποθηκευτικού χρόνου, άδειες πρόσβασης σε αρχεία και προγράμματα Συντονισμό προσπαθειών για επίλυση προβλημάτων στο σύστημα 3-18

Ιστορικό Λειτουργικών Συστημάτων Περίληψη της εξέλιξης τους Από απλά προγράμματα Που ανακτούσαν και εκτελούσαν ένα πρόγραμμα τη φορά Σε σύνθετα συστήματα που Συντονίζουν τον χρονομερισμό Διατηρούν προγράμματα και αρχεία σε συσκευές μαζικής αποθήκευσης της μηχανής Ανταποκρίνονται άμεσα σε αιτήματα των χρηστών Η εξέλιξή τους συνεχίζεται 3-19

Ιστορικό Λειτουργικών Συστημάτων Λειτουργικά για Πολυεπεξεργαστικές Μηχανές και Δίκτυα Δυνατότητες Χρονομερισμού και Πολυδιεργασίας Ανάθεση εργασία σε πάνω από έναν επεξεργαστές και διαμοιρασμός χρόνου σε κάθε επεξεργαστή Εξισορρόπηση φόρτου (load balancing) δυναμική κατανομή σε όλους τους επεξεργαστές για αποδοτική χρήση τους Κλιμάκωση (scaling) διάσπαση εργασιών σ ένα αριθμό υπο-εργασιών συμβατό με το πλήθος των διαθέσιμων επεξεργαστών Δίκτυα Υπολογιστών ανάγκη για ανάπτυξη ενιαίου λειτουργικού που συντονίζει τις δραστηριότητες του δικτύου αντί για ένα δίκτυο μεμονωμένων λειτουργικών συστημάτων 3-20

Κατευθύνσεις Έρευνας στα Λειτουργικά Συστήματα Λειτουργικά για υπολογιστές με πολλούς επεξεργαστές Εξισορρόπηση φόρτου Κλιμάκωση Λειτουργικά συστήματα για δίκτυα υπολογιστών Λειτουργικά για μικρούς φορητούς υπολογιστές όπως PDA, tablet computers (ιδιαίτερες απαιτήσεις αποθήκευσης και εξοικονόμησης ισχύος) VxWorks από την Wind River Systems για τα οχήματα Spirit και Opportunity για την εξερεύνηση του πλανήτη Άρη Android για smartphones και tablet computers. Βασίζεται στο Linux (από Open Handset Alliance led by Google) Windows CE ή Pocket PC(από Microsoft) Palm OS (απόpalmsοurce, Inc) αναπτύχθηκε ειδικά για χρήση σε PDA 3-21

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΛΕΙΤΟΥΡΓΙΚΏΝ ΣΥΣΤΗΜΆΤΩΝ 3-22

Αρχιτεκτονική Λειτουργικών Συστημάτων Για την κατανόηση της σύνθεσης ενός Λ.Σ. θα εξετάσουμε πρώτα όλο το φάσμα λογισμικού σ έναν υπολογιστή, παρουσιάζοντας έναν τρόπο ταξινόμησής του και μετά θα επικεντρωθούμε στο Λ.Σ. 3-23

Κατηγορίες λογισμικού (1/2) Λογισμικό εφαρμογών Προγράμματα που αξιοποιούν τον Η/Υ και εκτελούν συγκεκριμένες εργασίες για τους χρήστες Διαφορετικό ανάλογα με τις ανάγκες των χρηστών Λογισμικό συστήματος Εκτελεί λειτουργίες κοινές για όλα τα υπολογιστικά συστήματα Παρέχει την υποδομή για το λογισμικό εφαρμογών 3-24

Κατηγορίες λογισμικού (2/2) 3-25

Διευκρίνηση Η προηγούμενη ταξονομία είναι ένας γενικός οδηγός και όχι καθολικά αποδεκτή. Υπάρχουν αρκετοί διαφορετικοί τύποι ταξινόμησης, π.χ. στα Windows οι ομάδες προγραμμάτων με ονόματα «Accessories» (βοηθήματα) και «Administrative tools» (εργαλεία διαχείρισης) περιλαμβάνουν λογισμικό και από την κατηγορία των εφαρμογών και από την κατηγορία των βοηθημάτων (της προηγούμενης ταξονομίας) 3-26

Στοιχεία Λειτουργικού Συστήματος Φλοιός ή Κέλυφος: Διασύνδεση του πυρήνα του Λ.Σ. με τους χρήστες μπορεί να έχει διαφορετικές μορφές ανάλογα με τις ανάγκες των χρηστών Πυρήνας: βασικές λειτουργίες ενός Η/Υ 3-27

Ο φλοιός ως διασύνδεση μεταξύ των χρηστών και του πυρήνα του λειτουργικού συστήματος 3-28

Φλοιός ή Κέλυφος (Shell) - 1 Διασύνδεση του πυρήνα του Λ.Σ. με τους χρήστες μπορεί να έχει διαφορετικές μορφές ανάλογα με τις ανάγκες των χρηστών. Π.χ. Για το Unix: Φλοιός Bourne, Φλοιός C, Φλοιός Korn H Διασύνδεση με τους χρήστες γίνεται Με διασύνδεση κειμένου Με γραφική διασύνδεση με το χρήστη (GUIή WIMP) Με τρισδιάστατες διασυνδέσεις, π.χ. αισθητήρες αφής 3-29

Φλοιός ή Κέλυφος (Shell) - 2 Ο Φλοιός δημιουργεί το σχήμα επικοινωνίας: Χρήστης Φλοιός UNIX (LINUX) H λειτουργία του παραπάνω σχήματος επιτρέπει να ξεκινήσει μια Διεργασία, κατόπιν εντολής του χρήστη, με ενδιάμεσο το Φλοιό. Ο Φλοιός αναλαμβάνει να θέτει διαρκώς στη διάθεση του χρήστη την ένδειξη διαθεσιμότητας ή αλλιώς την ένδειξη αναμονής εντολής ή αλλιώς το σύμβολο προτροπής (prompt), το γνωστό χαρακτήρα $ (στο φλοιό Bourne) ή % (στο φλοιό C) στην οθόνη του τερματικού του χρήστη. 3-30

Φλοιός ή Κέλυφος (Shell) - 3 Π.χ. O χρήστης υποβάλλει την εντολή $ date και λαμβάνει την απάντηση Thu Nov 24 14:39:50 EET_DST 2000 3-31

Φλοιός ή Κέλυφος (Shell) - 4 Διαχειριστής Παραθύρων: Σημαντικό συστατικό στους φλοιούς GUI Δεσμεύει τμήματα χώρου στην οθόνη, τα παράθυρα, και παρακολουθεί ποια εφαρμογή είναι συσχετισμένη με καθένα από αυτά. Είναι ο ενδιάμεσος μεταξύ των χρηστών και των εφαρμογών 3-32

Πυρήνας (Kernel) Λειτουργικού Συστήματος Περιέχει το απαραίτητο λογισμικό για τις βασικές λειτουργίες ενός υπολογιστικού συστήματος. Παραδείγματα τέτοιου λογισμικού: Διαχειριστής αρχείων Οδηγοί συσκευών Διαχειριστής μνήμης Χρονοπρογραμματιστής και διεκπεραιωτής 3-33

Διαχειριστής Αρχείων Συντονίζει τη χρήση λειτουργιών μαζικής αποθήκευσης Καταγραφή όλων των αρχείων σ ένα συγκεκριμένο μέσο αποθήκευσης, πληροφορίες για τη θέση τους, τους χρήστες που έχουν πρόσβαση, τα διαθέσιμα τμήματα για νέα αρχεία Τα αρχεία και όλες οι σχετικές πληροφορίες διατηρούνται στο μέσο αποθήκευσης που έχει τα αρχεία. Όταν γίνεται διαθέσιμο, ο Δ.Α. μπορεί να τα ανακτήσει και να τα δει Επιβλέπει πρόσβαση σε αρχεία από οποιαδήποτε άλλη μονάδα λογισμικού: αίτηση για παραχώρηση πρόσβασης -> άνοιγμα του αρχείου Κατάλογος (ή Φάκελος): Μια δημιουργούμενη από το χρήστη ομαδοποίηση αρχείων και άλλων καταλόγων (υποκαταλόγων) σύμφωνα με το σκοπό τους Διαδρομή καταλόγου: Μια ακολουθία από καταλόγους μέσα σε καταλόγους (π.χ. Path: /Users/Aphro/Documents/Courses/Introduction to CS/Chapter3.pptx 3-34

Πυρήνας (Kernel) Λειτουργικού Συστήματος Περιέχει το απαραίτητο λογισμικό για τις βασικές λειτουργίες ενός υπολογιστικού συστήματος. Παραδείγματα τέτοιου λογισμικού: Διαχειριστής αρχείων Οδηγοί συσκευών Διαχειριστής μνήμης Χρονοπρογραμματιστής και διεκπεραιωτής 3-35

Οδηγοί Συσκευών Device Drivers Λογισμικό που επικοινωνεί με τους ελεγκτές ή απ ευθείας με τις περιφερειακές συσκευές του υπολογιστή Ειδικά σχεδιασμένο για συγκεκριμένο τύπο συσκευής (π.χ. Οθόνη, εκτυπωτής) Μεταφράζει γενικές απαιτήσεις σε πιο τεχνικά βήματα Επιτρέπουν το σχεδιασμό των άλλων μονάδων λογισμικού ανεξάρτητα από τα ειδικά χαρακτηριστικά συγκεκριμένων συσκευών Αποτέλεσμα: Γενικό λειτουργικό σύστημα που προσαρμόζεται για συγκεκριμένες περιφερειακές συσκευές με απλή εγκατάσταση κατάλληλων οδηγών 3-36

Πυρήνας (Kernel) Λειτουργικού Συστήματος Περιέχει το απαραίτητο λογισμικό για τις βασικές λειτουργίες ενός υπολογιστικού συστήματος. Παραδείγματα τέτοιου λογισμικού: Διαχειριστής αρχείων Οδηγοί συσκευών Διαχειριστής μνήμης Χρονοπρογραμματιστής και διεκπεραιωτής 3-37

Διαχειριστής Μνήμης (1/2) Memory Manager Συντονίζει τη χρήση της κύριας μνήμης του υπολογιστή Περιορισμένα καθήκοντα όταν εκτελείται μια εργασία τη φορά Εκτεταμένα καθήκοντα σε πολυδιεργασιακά και πολυχρηστικά συστήματα Σε Πολυδιεργασιακά/Πολυχρηστικά συστήματα**, ο Δ.Μ. εκχωρεί χώρο μνήμης και εξασφαλίζει ότι οι ενέργειες κάθε προγράμματος περιορίζονται στο χώρο που του έχει παραχωρηθεί παρακολουθεί την εξέλιξη των εργασιών και τις περιοχές μνήμης που δεν είναι πλέον κατειλημμένες **Συστήματα με πολλά προγράμματα και δεδομένα στην κύρια μνήμη 3-38

Διαχειριστής Μνήμης (2/2) Σελιδοποίηση και Εικονική Μνήμη Όταν η συνολική απαιτούμενη μνήμη υπερβαίνει αυτή του υπολογιστή χρησιμοποιείται σελιδοποίηση (paging) Ψευδαίσθηση μεγαλύτερης ποσότητας μνήμης (π.χ. 1024 ΜΒ ενώ η πραγματική είναι 512 ΜΒ) με δέσμευση 1024 ΜΒ στον μαγνητικό δίσκο όπου καταγράφει τα bits που θα αποθηκεύονταν στην κύρια μνήμη αν είχε 1024 ΜΒ Διαίρεση των δεδομένων σε ομοιόμορφο μέγεθος μερικών KB: σελίδες (pages) Αντιμετάθεση αυτών των σελίδων μεταξύ κύριας μνήμης και δίσκου εξασφαλίζοντας ότι οι απαιτούμενες κάθε φορά σελίδες βρίσκονται στη μνήμη Εικονική μνήμη (Virtual Memory) Είναι η ψευδαίσθηση του μεγάλου χώρου μνήμης που δημιουργείται από τη σελιδοποίηση 3-39

Πυρήνας (Kernel) Λειτουργικού Συστήματος Περιέχει το απαραίτητο λογισμικό για τις βασικές λειτουργίες ενός υπολογιστικού συστήματος. Παραδείγματα τέτοιου λογισμικού: Διαχειριστής αρχείων Οδηγοί συσκευών Διαχειριστής μνήμης Χρονοπρογραμματιστής και Διεκπεραιωτής 3-40

Χρονοπρογραμματιστής και Διεκπεραιωτής Σε πολυπρογραμματιστικά συστήματα Χρονοπρογραμματιστής (Scheduler) Προσδιορίζει τις δραστηριότητες προς εκτέλεση Διεκπεραιωτής (Dispatcher) Ελέγχει την κατανομή του χρόνου σε αυτές τις δραστηριότητες 3-41

Η διαδικασία εκκίνησης (1/3) boot strapping, booting Eκτελείται κάθε φορά που ο υπολογιστής τίθεται σε λειτουργία Το λειτουργικό μεταφέρεται από το μέσο αποθήκευσης στην κύρια μνήμη (που είναι κενή κατά την εκκίνηση) Η ΚΜΕ έχει έναν μετρητή προγράμματος με μια συγκεκριμένη προκαθορισμένη διεύθυνση μνήμης που περιμένει να βρει την αρχή του προγράμματος προς εκτέλεση Η κύρια μνήμη κατασκευάζεται με πτητικές τεχνολογίες Ένα μικρό τμήμα της κύριας μνήμης όπου η ΚΜΕ περιμένει να βρει το αρχικό πρόγραμμα κατασκευάζεται από ειδικά κελιά μη πτητικής μνήμης: Read Only Memory (ROM) Στη ROM των υπολογιστών βρίσκεται μόνιμα αποθηκευμένο ένα πρόγραμμα που ονομάζεται ρουτίνα εκκίνησης (bootstrap) και εκτελείται όταν ανάβει ο υπολογιστής Κατευθύνει την ΚΜΕ να μεταφέρει το λειτουργικό από το μέσο αποθήκευσης στην Κ.Μ. Μόλις φορτωθεί το λειτουργικό, το πρόγραμμα εκκίνησης κατευθύνει την ΚΜΕ να εκτελέσει μιά εντολή μετάβασης (JUMP) στη συγκεκριμένη περιοχή Υλικολογισμικό (Firmware): λογισμικό αποθηκευμένο σε ROM, δηλ. μόνιμα καταγεγραμμένο σε υλικό 3-42

Η διαδικασία εκκίνησης (2/3) boot strapping, booting 3-43

Η διαδικασία εκκίνησης (3/3) boot strapping, booting Μετά την εκκίνηση Ο χρήστης κάνει αιτήσεις στο λειτουργικό για την εκτέλεση διαφόρων βοηθητικών προγραμμάτων ή προγραμμάτων εφαρμογών Απαιτείται εκμάθηση από το χρήστη του συγκεκριμένου βοηθητικού προγράμματος ή εφαρμογής του λειτουργικού για περιήγηση μεταξύ των εφαρμογών Συστήματα «Με το κλειδί στο χέρι» (turn key systems) Το λογισμικό τους είναι μόνιμα αποθηκευμένο στην κύρια μνήμη τους 3-44

ΒΙΟS (Basic Input-Output System) Βρίσκεται στη ROM ενός προσωπικού υπολογιστή μαζί με το πρόγραμμα εκκίνησης (bootstrap) Περιέχει συλλογή ρουτινών για εκτέλεση στοιχειωδών δραστηριοτήτων εισόδου εξόδου, π.χ. λήψη πληροφοριών από το πληκτρολόγιο, εμφάνιση μηνυμάτων στην οθόνη του υπολογιστή, ανάγνωση δεδομένων από μέσα αποθήκευσης Οι ρουτίνες αυτές χρησιμοποιούνται από το πρόγραμμα εκκίνησης για δραστηριότητες Ε/Ε πριν το κανονικό ξεκίνημα του λειτουργικού π.χ. για επικοινωνία με το χρήστη ή για αναφορά σφαλμάτων κατά τη διάρκεια εκκίνησης 3-45

Ο όρος ΒΙΟS Στην πραγματικότητα αναφέρεται μόνο σε ένα μέρος της ROM ενός υπολογιστή Παρ όλα αυτά χρησιμοποιείται ευρέως ως αναφορά για όλο το λογισμικό που είναι στην ROM ή και για την ίδια τη ROM 3-46

Ευχαριστώ για την προσοχή σας! 3-47