240 likes | 522 Views
Εφαρμογές Υπολογιστών Ά Λυκείου Κεφ. 4 Λογισμικό Συστήματος. Παύλος Ν. Κεφαλάκης. Λογισμικό συστήματος . Υπολογιστικό σύστημα. Υλικό. Λογισμικό. Λογισμικό εφαρμογών. Λογισμικό συστήματος. Λειτουργικό σύστημα. Ειδικά εργαλεία. Βασικές Ερωτήσεις.
E N D
Εφαρμογές Υπολογιστών Ά ΛυκείουΚεφ. 4Λογισμικό Συστήματος Παύλος Ν. Κεφαλάκης
Λογισμικό συστήματος Υπολογιστικό σύστημα Υλικό Λογισμικό Λογισμικό εφαρμογών Λογισμικό συστήματος Λειτουργικό σύστημα Ειδικά εργαλεία
Βασικές Ερωτήσεις • Ποια είναι η διαφορά μεταξύ ενός Προγράμματος Εφαρμογής και ενός Λειτουργικού Συστήματος; • Πρόγραμμα Εφαρμογής: Καλύπτει κάποια συγκεκριμένη ανάγκη – επιλύει ένα πρόβλημα • Λειτουργικό συστήματος: Διευθύνει / διαχειρίζεται τον υπολογιστή σε χαμηλό/βασικό επίπεδο • Παρέχει τα εργαλεία και το περιβάλλον ανάπτυξης και εκτέλεσης λογισμικών εφαρμογών • συχνά αλληλεπιδρά απευθείας με το υλικό
Η.Υ. , Λειτουργικό Σύστημα, Εφαρμογές και Χρήστης Χρήστης ÐÑÏÃ Εφαρμογές Λειτουργικό Εφαρμογές Η.Υ. Υλικό Χρήστης Σύστημα Χρήστης
Λειτουργικό Σύστημα • Το ΛΣ παίζει το ρόλο του «κυβερνήτη» του υπολογιστή • Λαμβάνει τα αιτήματα των χρηστών • Τα αναλύει σε επιμέρους λειτουργίες • Σχεδιάζει με ποιο τρόπο θα κάνει τη βέλτιστη χρήση του υλικού για την ικανοποίηση αυτών των αιτημάτων • Παρακολουθεί την εκτέλεση των απαραίτητων λειτουργιών • Συνθέτει τις απαντήσεις και τις προωθεί στον χρήστη • Στόχοι • Εξασφάλιση της μέγιστης δυνατής ευκολίας στο χρήστη • Εξασφάλιση της μέγιστης δυνατής αξιοποίησης των πόρων του συστήματος
Λειτουργικό Σύστημα Το λειτουργικό σύστημα επικοινωνεί/αλληλεπιδρά με διάφορα μέρη του υπολογιστικού συστήματος • Το λειτουργικό σύστημα διαχειρίζεται τους πόρους του συστήματος. • Επιτρέπει στις εφαρμογές να έχουν πρόσβαση στους πόρους του συστήματος, είτε απευθείας είτε διαμέσου άλλων λογισμικών συστήματος. • Προσφέρει μια άμεση διεπαφή/επικοινωνία του χρήστη με το υπολογιστικό σύστημα. π.χ. βιβλιοθήκη γραφικών, οδηγοί συσκευών
Εργασίες Λ.Σ. • Εργασίες ΛΣ • Εκτέλεση προγραμμάτων • Λειτουργίες εισόδου – εξόδου • Διαχείριση του συστήματος αρχείων • Ανίχνευση λαθών • Κατανομή πόρων • Απολογιστικά στοιχεία • Προστασία - Ασφάλεια
Λειτουργικό Σύστημα – Εκτέλεση Προγραμμάτων • Πολλαπλά προγράμματα που εκτελούνται ταυτόχρονα μοιράζονται τη χρήση της κυρίας μνήμης. • Παίρνουν τη σειρά τους χρησιμοποιώντας τη ΚΜΕ. • Συναγωνίζονται για μια ευκαιρία να χρησιμοποιήσουν συσκευές εισόδου / εξόδου • Το λειτουργικό σύστημα παίζει το ρόλο του ελεγκτή για να σιγουρευτεί ότι όλα τα μέρη συνεργάζονται και έχουν την ευκαιρία να «δράσουν»
Κατηγορίες Λ.Σ. • Με βάση τον αριθμό των χρηστών • Ενός χρήστη (single user) – μόνο ένας χρήστης μπορεί να χρησιμοποιεί τον υπολογιστή σε μια δεδομένη χρονική στιγμή (π.χ. PalmOS (for PDAs), Symbian (for mobile devices), DOS) • Πολλών χρηστών (multi-user) – ταυτόχρονη χρήση του υπολογιστή από πολλούς χρήστες (π.χ. Unix, Linux, Windows, MacOS) • Με βάση τον αριθμό των εργασιών • Μίας εργασίας (single tasking) π.χ. PalmOS, DOS • Πολλών εργασιών (multi-tasking) π.χ. Windows, Unix, Linux, MacOS Personal Digital Assistants
Κατηγορίες Λ.Σ.(συν.) Πολλών-Εργασιών Λ.Σ.
Λειτουργικό Σύστημα • Σταθμοί στην εξέλιξη των ΛΣ • ΛΣ ομαδικής επεξεργασίας • ΛΣ πολυπρογραμματισμού • ΛΣ καταμερισμού χρόνου • ΛΣ κατανεμημένης επεξεργασίας
Ομαδική Επεξεργασία • Τις δεκαετίες 1960 και 1970 ένας υπολογιστής ήταν ένα ογκώδες μηχάνημα που είχε ένα και μόνο χειριστή (operator) • Ο χειριστής θα έπαιρνε τις διάφορες εργασίες από τους χρήστες και θα τις οργάνωνε σε δεσμίδες (batches) • Μια δεσμίδα περιέχει ένα σύνολο εργασιών που χρειάζονται τους ίδιους πόρους. • Μια εργασία (job) αποτελείται από το πρόγραμμα και ένα σύνολο εντολών σχετικά με το λογισμικό συστήματος και πόρους που χρειάζονται για την εκτέλεση του προγράμματος. • Οι δεσμίδες αυτές θα δίνονταν μετά στον υπολογιστή για επεξεργασία. • Η οργάνωση σε δεσμίδες γινόταν για να μη χρειάζεται ο χειριστής να αλλάζει την κατάσταση της μηχανής πριν κάθε εκτέλεση
Επεξεργασία κατά δεσμίδες(συν.) • Ο όρος batch – δεσμίδα σημαίνει πλέον ένα σύστημα στο οποίο προγράμματα και πόροι συστήματος συντονίζονται και εκτελούνται χωρίς αλληλεπίδραση μεταξύ του χρήστη και του προγράμματος. • Μοντέρνα Λ.Σ. ενσωματώνουν επεξεργασία του τύπου δεσμίδας με το να επιτρέπουν στο χρήστη να ορίζει ένα σετ από εντολές Λ.Σ. ως ένα αρχείο δεσμίδας (batch file) για να ελέγχει/διαχειρίζεται την επεξεργασία ενός μεγάλου προγράμματος. • Αρχεία με προέκταση .bat στα Windows περιέχουν εντολές συστήματος • Π.χ.: επεξεργασία πληρωμής μηνιαίας μισθοδοσίας ενός οργανισμού είναι μια μεγάλη εργασία που χρησιμοποιεί συγκεκριμένους πόρους με ουσιαστικά καμία αλληλεπίδραση με το χρήστη.
ΕξέλιξηΛειτουργικών Συστημάτων • Συστήματα Πολυπρογραμματισμού (multiprogramming) • Εισάγει την ιδέα της διατήρησης πολλών εργασιών στη μνήμη και αντιστοιχεί έναν πόρο σε μια εργασία μόνο εάν ο συγκεκριμένος πόρος είναι διαθέσιμος • Οι εργασίες επιζητούν πρόσβαση (ανταγωνιζόμενες μεταξύ τους) στην ΚΜΕ ώστε να εκτελεστούν με τον κύκλο μηχανής (execute) • Για παράδειγμα, όταν ένα πρόγραμμα χρησιμοποιεί μια μονάδα εισόδου, τότε η ΚΜΕ είναι ελεύθερη να χρησιμοποιηθεί από άλλο πρόγραμμα
Εξέλιξη Λειτουργικών Συστημάτων • Συστήματα Χρονικού Καταμερισμού (time sharing) • Οι πόροι μπορούν να μοιράζονται μεταξύ διαφόρων εργασιών. • Ο χρονικός καταμερισμός (time sharing) επιτρέπει την ταυτόχρονη χρήση του υπολογιστή από πολλαπλούς χρήστες. • Ο χρόνος ΚΜΕ διαμοιράζεται στους ενεργούς χρήστες • Διεργασία (process): Ένα πρόγραμμα που βρίσκεται στη μνήμη και περιμένει για πόρους (πρόσβαση στη ΚΜΕ)
CPU RAM User 2 User 1 Διεργασίες (Processes) Δ1, Δ2, Δ3, Δ4 Δ5, Δ6, Δ7, Δ8 DISC Καταμερισμός χρόνου - Πολυπρογραμματισμός Καταμερισμός Χρόνου: μεταξύ του χρήστη 1 και χρήστη 2 Πολυπρογραμματισμός: μεταξύ διεργασιών Δ1, Δ2, …, Δ8
Γνωστά Λειτουργικά Συστήματα • UNIX • Αναπτύχθηκε σε γλώσσα C (υψηλού επιπέδου) • Αξιόπιστο και αποδοτικό • Διατίθεται σε πηγαίο κώδικα και δεν ανήκει σε μια μόνο εταιρία • Δύο επίπεδα • Πυρήνας (επικοινωνεί με το υλικό του υπολογιστή) • Κέλυφος (παρεμβάλλεται μεταξύ του χρήστη και του πυρήνα και ασχολείται με την αμφίδρομη επικοινωνία χρήστη - υπολογιστή) • DOS • Τρία επίπεδα • Επεξεργαστής εντολών • Πυρήνας • BIOS • WINDOWS διάφορες εκδόσεις • Διαθέτει γραφικό περιβάλλον διεπαφής με το χρήστη • OS/2, MVS (IBM) • MAC (Apple)