Λειτουργικά Συστήματα¶
Επίσημο περίγραμμα μαθήματος του ΤΜΗΥΠ (Πανεπιστήμιο Πατρών), όπως δημοσιεύεται στη σελίδα του μαθήματος και στο συνημμένο αρχείο «Περίγραμμα Μαθήματος». Το κείμενο παρατίθεται αυτούσιο, χωρίς τα πρότυπα οδηγιών του εντύπου.
Στόχοι¶
- Επιδιωκόμενα μαθησιακά αποτελέσματα του μαθήματος
Στο τέλος του μαθήματος ο φοιτητής θα:
- έχει κατανοήσει βασικές έννοιες των Λειτουργικών Συστημάτων και της διαχείρισης των δεδομένων και θα έχει εντρυφήσει στα στοχεία που είναι απαραίτητα για την αποτελεσματική υλοποίηση τέτοιων συστημάτων.
- έχει κατανοήσει τις βασικές έννοιες των διεργασιών, νημάτων, διαδιεργασιακής επικοινωνίας και χρονοπρογραμματισμού
- έχει κατανοήσει τις τεχνικές και τους αλγορίθμους διαχείρισης μνήμης.
- έχει κατανοήσει τις διάφορες στρατηγικές αποθήκευσης και μεθόδους προσπέλασης σε συστήματα αρχείων.
Δεξιότητες
Στο τέλος του μαθήματος, ο φοιτητής θα έχει αναπτύξει περαιτέρω τις παρακάτω δεξιότητες: 1. ικανότητα να κατανοεί τις διάφορες έννοιες και βασικές αρχές των λειτουργικών συστημάτων και πως αυτά σχετίζονται με την απόδοση πραγματικών συστημάτων. 2. ικανότητα να εφαρμόζει μεθοδολογικά τις έννοιες αυτές με στόχο τη σχεδίαση και υλοποίηση αποτελεσματικών λειτουργικών συστημάτων. 3. ικανότητα συνεργασίας, με σκοπό την επίλυση προβλημάτων που ανακύπτουν κατά την ανάπτυξη ενός πλήρως λειτουργικού συστήματος 4. δεξιότητες μελέτης που χρειάζονται για τη συνεχή επαγγελματική ανάπτυξη.
Περιεχόμενο (ύλη)¶
Ορισμοί λειτουργικών συστημάτων, ιστορική εξέλιξή τους, κυριότερα μέρη τους. Διεργασίες, καταστάσεις διεργασιών, τμήμα ελέγχου διεργασιών, διαχείριση διακοπών. Διαδιεργασιακή επικοινωνία, κρίσιμες περιοχές, αμοιβαίος αποκλεισμός, primitives αμοιβαίου αποκλεισμού, υλοποίησή τους, αλγόριθμος Dekker, αλγόριθμος Peterson και αλγόριθμος Bakery (Lamport), hardware λύσεις, Test-and-Set εντολές. Σημαφόροι, υλοποίηση σημαφόρων, σημαφόροι μετρητές, σημαφόροι δυαδικοί. Κρίσιμες περιοχές υπό συνθήκη, ουρές γεγονότων, monitors. Παράδειγμα απομονωτή μηνυμάτων, αναγνώστες και γραφείς, συστήματα παραγωγού-καταναλωτή, Χρονοπρογραμματισμός διεργασιών, Νήματα, Χρονοπρογραμματισμός Νημάτων. Κατανεμημένος συγχρονισμός. Διαχείριση της μνήμης: (α) Πραγματική μνήμη: οργάνωση, συνεχές ασυνεχές μοίρασμα, κατάτμηση σταθερού μεγέθους, εναλλαγή. (β) Ιδεατή μνήμη: σελιδοποίηση, τμηματοποίηση, συνδυασμοί τους, μέσο μήκος σελίδας, μέσος αριθμός τμημάτων-οπών, ο κανόνας του 50%, μέθοδοι αντικατάστασης σελίδας, τοπικότητα, σύνολο εργασίας, σελιδοποίηση κατά απαίτηση. Χειρισμός διατάξεων εισόδου-εξόδου και χρονοπρογραμματισμός δίσκων. Θεωρία αδιεξόδων. Παραδείγματα λειτουργικών συστημάτων και τρόποι σχεδίασής τους.
Αξιολόγηση¶
- Γραπτή εξέταση (50% του συνολικού βαθμού)
- Εργαστηριακές Ασκήσεις (50% του συνολικού βαθμού).
Βιβλιογραφία¶
- Andrew S. Tanenbaum, Herbert Bos, Σύγχρονα Λειτουργικά Συστήματα, Κλειδάριθμος ΕΠΕ, 2018
- Α. Silberschatz, Galvin, Gagne, Λειτουργικά Συστήματα, Χ. Γκιούρδα & ΣΙΑ ΕΕ 10η Εκδ./2021 9η/2017
- Μάργαρης Αθανάσιος, Linux, Εκδόσεις Α. ΤΖΙΟΛΑ & ΥΙΟΙ Α.Ε., 1η/2021