ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Μάθηµα 1 Ο ρόλος του ΛΣ Υλικό Υπολογιστικό σύστηµα Λειτουργικό σύστηµα Λογισµικό Προγράµµατα εφαρµογής Στόχοι του ΛΣ Χρήστες ιευκόλυνση των χρηστών ιευκόλυνση των προγραµµατιστών Αποδοτική λειτουργία του υπολογιστικού συστήµατος
Μάθηµα 1 1 η γενιά: Συστήµατα Οµαδικής Επεξεργασίας (Οµαδοποίηση προγραµµάτων) Μειονεκτήµατα: Υποαπασχόληση των συσκευών, µεγάλος χρόνος ανακύκλωσης. 2 η γενιά: Συστήµατα Πολυπρογραµµατισµού (Σήµατα ιακοπής, ΛΣ Τηλεπεξεργασίας) Μειονέκτηµα: Πολύπλοκα ΛΣ Συστήµατα Καταµερισµού Χρόνου (Σήµα διακοπής από τον χρονιστή) 3 η γενιά: 4 η γενιά: Συνδυασµός 1 ης και 2 ης γενιάς (Υποστήριξη οµαδικής επεξεργασίας & καταµερισµού χρόνου) Παράλληλα και Κατανεµηµένα Λειτουργικά Συστήµατα (Χρήση πολλών επεξεργαστών) Τα ΛΣ γράφονται σε συµβολική γλώσσα ή σε συνδυασµό συµβολικής γλώσσας και κάποιας γλώσσας υψηλού επιπέδου (συνήθως C)
ΟΜΗ ΛΣ Μάθηµα 1
ENOTHTA 6 Μάθηµα 2 ΙΕΡΓΑΣΙΕΣ & ΕΛΑΦΡΕΣ ΙΕΡΓΑΣΙΕΣ Σύγκριση επίδοσης ΛΣ Απαιτήσεις
Μάθηµα 2 Προγράµµα Χρήστη Νήµα 1 Νήµα 2 Νήµα 3 ιεργασία 1 ιεργασία 2 Νήµα 1 Νήµα 2 Νήµα 3 Νήµα 4 Νήµα 5 Μνήµη 1 Μνήµη 2 Μνήµη 1 Μνήµη 2 Εναλλαγή µεταξύ νηµάτων προκαλεί µικρότερη επιβάρυνση σε σχέση µε την εναλλαγή µεταξύ διεργασιών
Μάθηµα 2 Παράδειγµα χρήσης νηµάτων ιαίρεση σε 3 διεργασίες ιαίρεση σε 3 νήµατα Σπατάλη µνήµης Απαιτήση µηχανισµού επικοινωνίας διεργασιών Καλύτερη λύση
ΑΠΕΙΚΟΝΙΣΗ ΙΕΡΓΑΣΙΩΝ Μάθηµα 3 Γράφος προβαδίσµατος Είναι ένας κατευθυνόµενος γράφος Οι κόµβοι παριστάνουν τις διεργασίες Οι ακµές συµβολίζουν το προβάδισµα των διεργασιών εν πρέπει να περιέχει κύκλους Οσυµβολισµός parbegin parend Περικλείουν εντολές που µπορούν να εκτελεστούν παράλληλα Οι εντολές είναι απλές ή σύνθετες εν µπορούν να περιγράψουν οποιοδήποτε γράφο προβαδίσµατος
Μάθηµα 3 Γράφοι προβαδίσµατος & προγράµµατα Γράφος προβαδίσµατος Τρείς λύσεις
ΚΡΙΣΙΜΑ ΤΜΗΜΑΤΑ ΚΑΙ ΑΜΟΙΒΑΙΟΣ ΑΠΟΚΛΕΙΣΜΟΣ Μάθηµα 4 Πρόβληµα από ταυτόχρονες συναλλαγές σε on-line σύστηµα τράπεζας Πρόβληµα: Ύπαρξη διαµοιραζόµενων πόρων µεταξύ διεργασιών
Μάθηµα 4 Κρίσιµο τµήµα: το µέρος ενός προγράµµατος που χρησιµοποιεί κοινά δεδοµένα Το πρόβληµα του κρίσιµου τµήµατος: οι διεργασίες πρέπει να εκτελούν ακέραια τα κρίσιµα τµήµατά τους Αµοιβαίος αποκλεισµός: όταν µία διεργασία εκτελεί το κρίσιµο τµήµα τηςεµποδίζει τις υπόλοιπες να κάνουν το ίδιο Η λύση του Peterson: µία µεταβλητή δείχνει ποια διεργασία µπορεί κάθε φορά να εκτελέσει το κρίσιµο τµήµα της
ΣΗΜΑΤΟΦΟΡΕΙΣ Μάθηµα 5 Σηµατοφορέας: ένας µετρητής µε ακέραιες τιµές Τιµή 0: «Κόκκινο φανάρι» Τιµή θετική: «Πράσινο φανάρι» Λειτουργία P: αναµονή να γίνει ο µετρητής θετικός και µείωσή του Λειτουργία V: αύξηση του µετρητή Η λειτουργία P υλοποιείται µε λίστες αναµονής
Μάθηµα 6 ΙΑΧΕΙΡΙΣΗ ΚΜΕ ΣΤΑ ΛΣ - ΧΡΟΝΟ ΡΟΜΟΛΟΓΗΣΗ Είδη χρονοδροµολόγησης
Μάθηµα 6 Λίστες του ΛΣ Λίστα έτοιµων διεργασιών: διεργασίες που µπορούν να εκτελεστούν Λίστα σηµατοφορέα: οι διεργασίες που περιµένουν να πάρει ο σηµατοφορέας θετική τιµή Κατάσταση διεργασίας: αν είναι έτοιµη για εκτέλεση, εκτελείται ή περιµένει για κάποιο σηµατοφορέα Καταστάσεις διεργασιών
Μάθηµα 7 ιάκριση Ανταλλαγή ΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ ΣΤΑ ΛΣ Κύρια µνήµη (RAM, ROM) ευτερεύουσα µνήµη (σκληροί δίσκοι, δισκέτες, CD-ROM, DVD)
Μάθηµα 8 ΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ ΣΤΑ ΛΣ ΣΥΣΤΗΜΑ ΑΡΧΕΙΩΝ ηµιουργία ιαγραφή Άνοιγµα Αρχείο Κλείσιµο Ανάγνωση Κατάλογος Εγγραφή Χαρακτηριστικά Μετονοµασία