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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Περιγραφή και Έλεγχος ιεργασιών

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

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

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

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

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

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

Εισαγωγή στον Προγραμματισμό Θεωρία 2 η Διάλεξη: Λογισμικό ΗΥ και Αποθήκευση Αρχείων

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

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

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

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

ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE)

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

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

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

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

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

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

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

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

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

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

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

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

ΗΜΥ 313: Τεχνολογία Λειτουργικών Συστηµάτων

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

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

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

Μαλούτα Θεανώ Σελίδα 1

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

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

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

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

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

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

Σχολ.έτος Κεφάλαιο 5 ο Γνωριμία με το Λογισμικό του Υπολογιστή.

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

Κεφάλαιο 4 Διεργασίες Β Τάξη ΕΠΑΛ

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

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

ΜΑΘΗΜΑ 3 MULTIPLE CHOICE

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

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

ΠΛΗ10 Κεφάλαιο 2. ΠΛΗ10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.1: Bασική Δομή του Υπολογιστή

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

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

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

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

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

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

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

1. Εισαγωγή. Λειτουργικά Συστήματα Η/Υ. Διεργασίες. Ορισμός ΚΕΦΑΛΑΙΟ 3 - ΔΙΕΡΓΑΣΙΕΣ. Κεφάλαιο 3 «Διεργασίες»

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΕΡΩΤΗΣΕΙΣ ΓΙΑ ΕΠΑΝΑΛΗΨΗ

ΠΡΟΒΛΗΜΑ ΕΠΕΓΕΡΓΑΣΙΑ. (Είναι οι σκέψεις και οι πράξεις που κάνουμε για να λυθεί το πρόβλημα) ΕΙΣΟΔΟΥ - ΕΞΟΔΟΥ

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

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

Τι είναι Κεντρική Μονάδα Επεξεργασίας(CPU: Central Processing Unit);

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ,

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

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

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

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

ιεργασίες και νήµατα Προγραµµατισµός ΙΙΙ 1 lalis@inf.uth.gr

Ε-85: Ειδικά Θέµατα Λογισµικού

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

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

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

Κεφάλαιο 5. Στόχοι Κεφαλάιου. Η αρχιτεκτονική von Neumann. Nell Dale John Lewis. Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ/CPU)

Επιτεύγµατα των Λ.Σ.

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

Παραδείγματα Δεδομένων: Οι τιμές στο κυλικείο, μια λίστα από ονόματα, τα σήματα της τροχαίας.

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

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

Transcript:

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

Το Λογισµικό του Ηλεκτρονικού Υπολογιστή

Περιεχόµενα Ορισµός Λογισµικού Κατηγορίες Λογισµικό Συστήµατος Λογισµικό Εφαρµογών

Το λογισµικό είναι: Το λογισµικό Το σύνολο των προγραµµάτων και δεδοµένων Το σύνολο εντολών που τίθενται στην διάθεση του χρήστη προκειµένου να υποδείξει στον Η/Υ το είδος των πράξεων που θα πρέπει να εκτελέσει. Το λογισµικό είναι υπεύθυνο για: Την επικοινωνία των προγραµµάτων και των χρηστών µε τον Η/Υ Την αυτοµατοποίηση των διαδικασιών της διαχείρισης της ΚΜΕ, της µνήµης και των µονάδων εισόδου-εξόδου.

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

Κατηγορίες Λογισµικού ΛΣ Υλικό Λογισµικό Συστήµατος (System Software): Περιλαµβάνει το σύνολο των προγραµµάτων που ελέγχουν, διαχειρίζονται και συντονίζουν τους πόρους των Η/Υ Λειτουργεί σε καθεστώς ανεξαρτησίας από συγκεκριµένες εφαρµογές. Η λειτουργία του δεν είναι άµεσα αντιληπτή από τον απλό χρήστη. Λογισµικό Εφαρµογών (Application Software): Περιλαµβάνει προγράµµατα που επιτρέπουν την εκτέλεση συγκεκριµένων εργασιών των χρηστών π.χ την δηµιουργία κειµένων, την σχεδίαση γραφικών, την οργάνωση δεδοµένων κλπ.

Λογισµικό Συστήµατος Το Λογισµικό Συστήµατος περιλαµβάνει: To Λειτουργικό Σύστηµα (π.χ. DOS, OS/2, Windows, MacOS, Unix, Linux) Τους Οδηγούς Υλικού Device Drivers (π.χ. οδηγοί κάρτας γραφικών, κάρτας ήχου, ποντικιού κλπ.) ένα µικρό πρόγραµµα το οποίο «γνωρίζει» τον τρόπο που µια συγκεκριµένη συσκευή παραλαµβάνει και αποστέλλει πληροφορίες Τους Μεταγλωττιστές και µεταφραστές Compilers και Interpreters (π.χ. C++ compiler) Προγράµµατα υπηρεσιών Utilities (π.χ. προγράµµατα µορφοποίησης δισκετών)

Κατηγορίες Λογισµικού

Παράδειγµα Λειτουργικού Συστήµατος Microsoft Windows

Λογισµικό Εφαρµογών Το λογισµικό εφαρµογών (Application Software), αποτελείται από προγράµµατα που έχουν σχεδιαστεί προκειµένου να βοηθήσουν τους χρήστες στην ολοκλήρωση των εργασιών τους, κατά τρόπο ταχύτερο, ευκολότερο και περισσότερο αποδοτικό. Το λογισµικό εφαρµογών µπορεί να διακριθεί στις εξής κατηγορίες: Γενικευµένο λογισµικό εφαρµογών π.χ., Outlook, Internet Explorer Εξειδικευµένο λογισµικό εφαρµογών π.χ., Λογισµικό εστιατορίων Ολοκληρωµένο λογισµικό. π.χ., Microsoft Office, Lotus Notes, κλπ

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

Λειτουργικό Σύστηµα Το Λειτουργικό Σύστηµα (Operating System) Είναι ο πυρήνας του λογισµικού συστήµατος Είναι ένα σύνολο προγραµµάτων που ελέγχουν και επιβλέπουν το υλικό του Η/Υ παρέχοντας διάφορες υπηρεσίες ιευθύνει/διαχειρίζεται πόρους του Η/Υ όπως η µνήµη, οι συσκευές εισόδου / εξόδου και η κεντρική µονάδα επεξεργασίας Προσφέρει το περιβάλλον (τη διεπαφή) µέσω του οποίου ο χρήστης επικοινωνεί µε τον υπολογιστή Άλλα λογισµικά συστήµατος υποστηρίζουν συγκεκριµένους στόχους εφαρµογών, όπως µια βιβλιοθήκη γραφικών που δίνει µια εικόνα στην οθόνη. Το λειτουργικό σύστηµα επιτρέπει σε µια εφαρµογή να επικοινωνεί (αλληλεπιδρά) µε τέτοιους πόρους του συστήµατος

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

Λειτουργικό Σύστηµα (συν.) Ένας Η/Υ γενικά έχει ένα λειτουργικό σύστηµα το οποίο γίνεται ενεργό και παίρνει τον έλεγχο της διαχείρισης του συστήµατος, όταν το σύστηµα εκκινεί (booting). Το υλικό αρχικά φορτώνει ένα µικρό σετ από εντολές του συστήµατος που είναι αποθηκευµένες στη µόνιµη µνήµη (ROM). Αυτές οι εντολές φορτώνουν ένα µεγαλύτερο τµήµα του λογισµικού συστήµατος από δευτερεύουσα µνήµη, συνήθως από το µαγνητικό δίσκο. Τελικά, όλα τα βασικά στοιχεία του λειτουργικού συστήµατος φορτώνονται, προγράµµατα εκκίνησης εκτελούνται, η διεπαφή µε το χρήστη προσφέρεται και το σύστηµα είναι έτοιµο να χρησιµοποιηθεί.

Λειτουργικό Σύστηµα (συν.) Η κεντρική ιδέα που αποτελεί τη βάση λειτουργίας του λειτουργικού συστήµατος είναι ο «δίκαιος καταµερισµός» Το λειτουργικό σύστηµα, διευθύνει / διαχειρίζεται διάφορους πόρους που πρέπει να µοιράζονται δίκαια στα διάφορα προγράµµατα στα οποία είναι απαραίτητοι.

Λειτουργικό Σύστηµα (συν.) Πολλαπλά προγράµµατα που εκτελούνται ταυτόχρονα µοιράζονται τη χρήση της κυρίας µνήµης. Παίρνουν τη σειρά τους χρησιµοποιώντας τη ΚΜΕ. Συναγωνίζονται για µια ευκαιρία να χρησιµοποιήσουν συσκευές εισόδου / εξόδου Το λειτουργικό σύστηµα παίζει το ρόλο του ελεγκτή για να σιγουρευτεί ότι όλα τα µέρη συνεργάζονται και έχουν την ευκαιρία να «δράσουν»

Κατηγορίες Λ.Σ. Με βάση τον αριθµό των χρηστών Ενός χρήστη (single user) µόνο ένας χρήστης µπορεί να χρησιµοποιεί τον υπολογιστή σε µια δεδοµένη χρονική στιγµή (π.χ. PalmOS (for PDAs), Symbian (for mobile devices)) Personal Digital Assistants Πολλών χρηστών (multi-user) ταυτόχρονη χρήση του υπολογιστή από πολλούς χρήστες (π.χ. Unix, Linux, Windows, MacOS) Με βάση τον αριθµό των εργασιών Μίας εργασίας (single tasking) π.χ. PalmOS Πολλών εργασιών (multi-tasking) π.χ. Windows, Unix, Linux, MacOS

Κατηγορίες Λ.Σ. (συν.) Πολλών-Εργασιών Λ.Σ.

ιαχείριση Πόρων Ένα πρόγραµµα που εκτελείται βρίσκεται στην κυρία µνήµη και οι εντολές του επεξεργάζονται η µια µετά την άλλη µε τον Κύκλο Φέρε-Αποκωδικοποίησε-Εκτέλεσε (Fetch-Decode-Execute Cycle). Πολυπρογραµµατισµός είναι η ταυτόχρονη συνύπαρξη πολλών προγραµµάτων στην κύρια µνήµη τα οποία επιζητούν πρόσβαση (ανταγωνιζόµενα µεταξύ τους) στην ΚΜΕ ώστε να τρέξουν (execute) ιαχείριση µνήµης είναι µια διαδικασία που παρακολουθεί ποια προγράµµατα βρίσκονται στη µνήµη καθώς και την ακριβή θέση τους σε αυτή. Ένα µοντέρνο Λειτουργικό Σύστηµα υιοθετεί τον πολυπρογραµµατισµό και γι αυτό εκτελεί διαχείριση µνήµης.

ιαχείριση Πόρων (συν.) ιεργασία (process) είναι ένα πρόγραµµα στη φάση εκτέλεσής του. Ένα πρόγραµµα είναι ένα στατικό σύνολο από εντολές. Μια διεργασία είναι µια δυναµική οντότητα που αντιπροσωπεύει το πρόγραµµα καθώς εκτελείται.

ιαχείριση Πόρων (συν.) ιαχείριση ιεργασιών Το λειτουργικό σύστηµα διαχειρίζεται τις διάφορες διεργασίες, που λόγω του πολυπρογραµµατισµού ένα σύστηµα µπορεί να έχει αρκετές ενεργές διεργασίες τη κάθε στιγµή: ελέγχει την κατάσταση τους και σε ποια φάση εκτέλεσης βρίσκονται (κρατεί πληροφορίες για τις ενεργές διεργασίες) Σε κάθε χρονική στιγµή µια συγκεκριµένη εντολή είναι η επόµενη που θα εκτελεστεί. Μια διεργασία µπορεί να διακοπεί καθώς εκτελείται

ιαχείριση Πόρων (συν.) Χρονοδροµολόγηση (scheduling) ΚΜΕ Η χρονοδροµολόγηση της ΚΜΕ ορίζει ποια διεργασία από αυτές που βρίσκονται στη µνήµη θα εκτελεστεί από την ΚΜΕ σε µια δεδοµένη χρονική στιγµή.

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

ιαχείριση Πόρων (συν.)

ιαχείριση Πόρων (συν.)

ιαχείριση Πόρων (συν.) FETCH-DECODE-EXECUTE CYCLE CPU RAM ιεργασίες (Processes) DISC

Χρονικός Καταµερισµός Ο χρονικός καταµερισµός (time sharing) επιτρέπει την ταυτόχρονη χρήση του υπολογιστή από πολλαπλούς χρήστες. Ο χρόνος Κ.Μ.Ε. διαµοιράζεται στους ενεργούς χρήστες Ο πολυπρογραµµατισµός, είναι µια τεχνική που επιτρέπει σε πολλαπλές διεργασίες να είναι ενεργές ταυτόχρονα. Έτσι, πολλοί προγραµµατιστές µπορούν να επικοινωνούν µε τον υπολογιστή και να µοιράζονται τους διαθέσιµους πόρους Το Λ.Σ. διαχειρίζεται το µοίρασµα των πόρων, συµπεριλαµβανοµένου και της Κ.Μ.Ε. Σε ένα σύστηµα χρονικού καταµερισµού, ο κάθε χρήστης έχει τη δική του νοητή µηχανή, στην οποία όλοι οι πόροι του συστήµατος είναι, στην πραγµατικότητα, διαθέσιµοι προς χρήση. Στην ουσία οι πόροι διαµοιράζονται στους χρήστες. Σε ένα σύστηµα χρονικού καταµερισµού, οι χρήστες µπορεί να δουν πτώση στην απόδοση του συστήµατος, είτε λόγω του αριθµού των ενεργών χρηστών είτε των ικανοτήτων της Κ.Μ.Ε.

Χρονικός Καταµερισµός (συν.) CPU RAM ιεργασίες (Processes) 1, 2, 3, 4 5, 6, 7, 8 User 1 DISC User 2 Καταµερισµός Χρόνου: µεταξύ του χρήστη 1 και χρήστη 2 Πολυπρογραµµατισµός: µεταξύ διεργασιών 1, 2,, 8

ιαχείριση Μνήµης Η µνήµη είναι µια συνεχής συλλογή από bits (σε οµάδες του byte 8 bits, 16, 32 ή 64-bits word) µε καθορισµένες διευθύνσεις, που µοναδικά καθορίζουν το κάθε συγκεκριµένο τµήµα µνήµης

ιαχείριση Μνήµης (συν.) Ένα πρόγραµµα είναι γεµάτο µε αναφορές σε µεταβλητές και σε άλλα µέρη του κώδικα. Όταν το πρόγραµµα µεταγλωττίσει, αυτές οι αναφορές αλλάζουν σε διευθύνσεις στη µνήµη όπου τα δεδοµένα και ο κώδικας υπάρχουν. Για να γίνει αυτό, χρειαζόµαστε δυο είδη διευθύνσεων. Η λογική διεύθυνση (γνωστή και ως νοητή ή σχετική διεύθυνση) είναι µια τιµή που προσδίδει µια γενική θέση, σχετική µε ένα πρόγραµµα αλλά όχι µε την κύρια µνήµη Κατά τη συγγραφή προγραµµάτων, ο προγραµµατιστής γνωρίζει µόνο τη λογική διεύθυνση Είναι µια αναφορά σε µια αποθηκευµένη τιµή σχετική µε το πρόγραµµα που κάνει τις αναφορές Η φυσική διεύθυνση είναι µια πραγµατική διεύθυνση στην κύρια µνήµη. Το λειτουργικό σύστηµα γνωρίζει την ακριβή θέση ενός προγράµµατος στη µνήµη και µπορεί να µετατρέπει λογικές διευθύνσεις σε ακριβείς διευθύνσεις.

ιαχείριση Μνήµης (συν.) Όταν ένα πρόγραµµα µεταγλωττίσει, µια αναφορά σε π.χ. ένα όνοµα µεταβλητής αλλάζει σε µια λογική διεύθυνση. Όταν το πρόγραµµα φορτωθεί στη µνήµη για να εκτελεστεί, κάθε λογική διεύθυνση αντιστοιχεί σε µια συγκεκριµένη φυσική διεύθυνση.

ιαχείριση Μνήµης (συν.) CPU RAM φυσικές διευθύνσεις 0 1 2 3..1000 5000.. λογική διεύθυνση: 2 φυσική διεύθυνση: 1002 εδώ υπάρχει ένα πρόγραµµα (φυσική διεύθυνση [1000 5000])

ιάχειριση Συνεχούς Μνήµης µνήµη Υπάρχουν µόνο 2 προγράµµατα στη µνήµη, κάθε χρονική στιγµή Το λειτουργικό σύστηµα Η εφαρµογή µόνο µια εφαρµογή εκτός του Λ.Σ. µπορεί να επεξεργαστεί κάθε φορά Αυτή η προσέγγιση ονοµάζεται: ιαχείριση Συνεχούς Μνήµης ολόκληρο το πρόγραµµα της εφαρµογής φορτώνεται σε ένα µεγάλο κοµµάτι της µνήµης.

ιαχείριση Συνεχούς Μνήµης (συν.) Μια λογική διεύθυνση είναι απλά µια αριθµητική τιµή σχετική µε το σηµείο εκκίνησης του προγράµµατος. ηµιουργούνται «λες και» το πρόγραµµα φορτώνεται στη θέση 0 της κυρίας µνήµης. Για να προσδιορίσουµε τη φυσική διεύθυνση, απλά προσθέτουµε τη λογική διεύθυνση στη διεύθυνση του σηµείου εκκίνησης του προγράµµατος στη φυσική κύρια µνήµη φυσική διεύθυνση = λογική διεύθυνση + σηµείο εκκίνησης προγράµµατος

σηµείο εκκίνησης προγράµµατος (φυσική διεύθυνση) ιαχείριση Συνεχούς Μνήµης (συν.) ιεύθυνση 0 π.χ. 555555 (φυσική διεύθυνση) Ηλογική διεύθυνση L (222222) µεταφράζεται στη φυσική διεύθυνση A+L (777777)

Άλλοι Μέθοδοι ιαχείρισης Μνήµης Άλλοι τρόποι διαχείρισης µνήµης παρέχουν περισσότερη ευελιξία ιαµερισµένη µνήµη: η µνήµη είναι χωρισµένη σε κοµµάτια σταθερού µεγέθους ή σε κοµµάτια που το µέγεθός τους καθορίζεται από τις ανάγκες των προγραµµάτων Σελιδοποιηµένη µνήµη: τα προγράµµατα χωρίζονται σε σελίδες σταθερού µεγέθους που φυλάσσονται σε πλαίσια µνήµης όταν φορτώνονται στη µνήµη.

ιαχείριση ιεργασιών ιαχείριση της Κ.Μ.Ε. από το Λ.Σ. για χρήση της από τις διεργασίες Οι διάφορες φάσεις µιας διεργασίας: Η διεργασία περιµένει για πόρους (εκτός της Κ.Μ.Ε.). Π.χ. δεδοµένα από δευτερεύουσα µνήµη Η διεργασία δεν περιµένει για ένα γεγονός να συµβεί πρώτα, π.χ. να ρθούν δεδοµένα από δευτερεύουσα µνήµη. Περιµένει µόνο τη σειρά της για να χρησιµοποιήσει τη Κ.Μ.Ε. π.χ. να επιτραπεί σε µια άλλη διεργασία να χρησιµοποιήσει τη Κ.Μ.Ε. Η διεργασία εκτελείται από τη Κ.Μ.Ε. Οι εντολές της επεξεργάζονται από το Fetch-Decode-Execute Κύκλο Μια διεργασία δηµιουργείται π.χ. ένα πρόγραµµα που εκτελείται Η διεργασία έχει ολοκληρώσει την εκτέλεσή της και έτσι δεν είναι πλέον µια ενεργή διεργασία.

ιαχείριση ιεργασιών (συν.) Waiting CPU Running Ready RAM Terminated DISC Πολλές διεργασίες µπορούν να είναι στη φάση ετοιµότητας (Ready) ή στη φάση αναµονής (Waiting) την ίδια χρονική στιγµή, αλλά µόνο µια διεργασία µπορεί να είναι στη φάση εκτέλεσης (Running).

Οµάδα Ελέγχου ιεργασίας (Process Control Block) Το λειτουργικό σύστηµα πρέπει να διαχειρίζεται µεγάλο όγκο δεδοµένων για κάθε ενεργή διεργασία Συνήθως, αυτά τα δεδοµένα τοποθετούνται σε µια δοµή δεδοµένων που ονοµάζεται «οµάδα ελέγχου διεργασίας» Κάθε φάση εκτέλεσης, αντιπροσωπεύεται από µια λίστα οµάδων ελέγχου διεργασίας, µια για κάθε διεργασία που βρίσκεται σε αυτή τη φάση

Οµάδα Ελέγχου ιεργασίας (Process Control Block) (συν.) Όµως, για όλες τις ενεργές διεργασίες, υπάρχει µόνο µια ΚΜΕ και µόνο µια οµάδα καταχωρητών. Οι καταχωρητές (registers) περιέχουν τις τιµές που αφορούν τη διεργασία που τρέχει τη συγκεκριµένη στιγµή. Κάθε φορά που µια διεργασία µπαίνει σε φάση εκτέλεσης: Οι τιµές των καταχωρητών της διεργασίας υπό εκτέλεση θα σωθούν στην οµάδα ελέγχου της διεργασίας Καινούργιες τιµές σχετικές µε τη διεργασία που θα αρχίσει να εκτελείται φορτώνονται στους καταχωρητές Αυτή η αλλαγή ονοµάζεται «µεταγωγή περιβάλλοντος» (context switching)