Παρουσίαση/Προβολή
(505) - Ιωάννης Μπαρμπουνάκης
Περιγραφή Μαθήματος
Περιγραφή Μαθήματος
Στις μέρες ενός τεχνολογικού μετασχηματισμού που μετατρέπει τα κινητά σε smart-phones, τους υπολογιστές σε netbooks και τους φορητούς σε ταμπλέτες, όπου οι ηλεκτρονικές συσκευές (τηλεοράσεις, αποκωδικοποιητές, δορυφορικοί και επίγειοι τηλεοπτικοί δέκτες) χρησιμοποιούν λειτουργικό σύστημα ανοικτού κώδικα, διασυνδέονται στο διαδίκτυο και αναπαράγουν πολυμέσα, το μάθημα “Λειτουργικά Συστήματα” αναλύει την εσωτερική δομή ενός σύγχρονου λειτουργικού συστήματος καθώς και τον τρόπο διαχείρισης των διαθέσιμων υπολογιστικών πόρων από τις διεργασίες που επιτελεί.
Σε όλα τα στάδια της εκπαίδευσης αλλά και της εργαστηριακής εξάσκησης, δίνεται έμφαση στις πρόσθετες δυνατότητες του διαχειριστικού λογαριασμού και όχι μόνο του απλού λογαριασμού των χρηστών. Συνεπώς, ο ηλεκτρονικός μηχανικός εκπαιδεύεται στη χρήση και στη διαχείριση ενός λειτουργικού συστήματος που αποτελεί την καρδιά των νέων τεχνολογικών προϊόντων. Καθίσταται, λοιπόν, ικανός να ασχοληθεί με την ανάπτυξη εφαρμογών client-server για σύγχρονες ηλεκτρονικές πλατφόρμες στην επερχόμενη εποχή του διαδικτύου των πραγμάτων.
Ημερομηνία δημιουργίας
Τετάρτη 1 Ιουνίου 2022
-
Μαθησιακοί στόχοι
Με την ολοκλήρωση του μαθήματος, οι φοιτητές είναι σε θέση να:
- κατανοούν την πολυπλοκότητα των σύγχρονων υπολογιστικών συστημάτων καθώς και τη χρησιμότητα των λειτουργικών συστημάτων.
- περιγράφουν την έννοια της εικονικής μνήμης στα λειτουργικά συστήματα.
- κατανοούν την οργάνωση του δίσκου και τη δομή του συστήματος διαχείρισης αρχείων.
- κατανοούν τις βασικές αρχές και τεχνικές που χρησιμοποιούνται στην υλοποίηση διεργασιών και νημάτων, καθώς και τους διαφορετικούς αλγορίθμους χρονοδρομολόγησης διεργασιών.
- περιγράφουν πως οι υπολογιστικοί πόροι χρησιμοποιούνται από το λογισμικό μιας εφαρμογής και πως γίνεται η διαχείρισή τους από το λειτουργικό σύστημα.
- εξηγούν την αρχιτεκτονική ενός λειτουργικού συστήματος που βασίζεται στον πυρήνα Linux και να μπορεί να γράφει προγράμματα χρησιμοποιώντας κλήσεις συστήματος.
- παραμετροποιούν και να διαχειρίζονται κάθε διανομή λειτουργικού συστήματος που βασίζεται στον πυρήνα Linux.
- χρησιμοποιούν μηχανισμούς διασωλήνωσης και ανακατεύθυνσης εισόδου-εξόδου στις εντολές κελύφους.
- χρονοπρογραμματίζουν διαχειριστικής φύσεως εργασίες μέσω του προγράμματος CRON
- δημιουργούν απλά και σύνθετα αρχεία δέσμης ενεργειών (script files) που να εκτελούνται σε ιδιωτικά κελύφη.
- διαχειρίζονται λογαριασμούς χρηστών, ομάδων χρηστών (groups) και δικαιώματα πρόσβασης.
Σε όλα τα στάδια της εκπαίδευσης αλλά και της εργαστηριακής εξάσκησης, δίνεται έμφαση στην ανάλυση των δυνατοτήτων των σύγχρονων λειτουργικών συστημάτων. Επιπλέον, παρέχεται ένα σετ ασκήσεων που αφορούν την παραμετροποίηση/διαχείριση κρίσιμων στοιχείων ενός λειτουργικού συστήματος και την ανάπτυξη εφαρμογών client-server για σύγχρονες ηλεκτρονικές πλατφόρμες στην εποχή του διαδικτύου των πραγμάτων.
Περιεχόμενο μαθήματος
Εισαγωγή στα Λειτουργικά Συστήματα (ΛΣ) με έμφαση στα ΛΣ ανοικτού κώδικα:
- βασικές έννοιες, ιστορία ΛΣ, δομή ΛΣ.
Διεργασίες:
- μοντέλο και υλοποίηση διεργασιών,
- δια-διεργασιακή επικοινωνία (συνθήκες ανταγωνισμού, κρίσιμες περιοχές, αμοιβαίος αποκλεισμός),
- χρονοπρογραμματισμός διεργασιών.
- Διασωλήνωση και Ανακατεύθυνση, χρήση φίλτρων. Κανονικές εκφράσεις (Regular Expressions) και χρήση τους μέσω των εντολών (grep, sed)
Νήματα:
- μοντέλο και χρήση νημάτων,
- υλοποίηση νημάτων στο χώρο του χρήστη και στον πυρήνα,
- υβριδικές υλοποιήσεις, αναδυόμενα νήματα,
- μετατροπή μονονηματικού κώδικα σε πολυνηματικό,
- χρονοπρογραμματισμός νημάτων.
Διαχείριση μνήμης: εναλλαγή, ιδεατή μνήμη, αλγόριθμοι αντικατάστασης σελίδων, θέματα σχεδιασμού για τα συστήματα σελιδοποίησης, τμηματοποίηση.
Είσοδος/Έξοδος (Ε/Ε): αρχές του υλικού Ε/Ε, αρχές του λογισμικού Ε/Ε, επίπεδα λογισμικού Ε/Ε, δίσκοι.
Συστήματα αρχείων:
- αρχεία και κατάλογοι, υλοποίηση συστήματος αρχείων, ασφάλεια και μηχανισμοί προστασίας.
- Πρόσβαση στο σύστημα αρχείων, διαδρομές, δικαιώματα, διαχείριση αρχείων, σύνδεσμοι, βασικοί τύποι αρχείων του λειτουργικού συστήματος (fat, ntfs, ext, ...).
Εφαρμογές-Κέλυφος-Πυρήνας: Εισαγωγή στη χρήση του κελύφους, χρησιμοποιώντας βασικές εντολές, μεταβλητές κελύφους, μεταβλητές περιβάλλοντος, εισαγωγικά, συνήθεις εντολές-εργαλεία και βασική επεξεργασία.
Προγραμματίζοντας το κέλυφος: διερμηνείς εντολών στο Linux, έλεγχος εκτέλεσης, ορίσματα εντολών, δομές επανάληψης.
Εγκατάσταση, παραμετροποίηση και διαχείριση εφαρμογών για διακομιστές όπως httpd (Apache), mysqld (MySQL), vsftpd (Very Secure FTP), named (BIND), iptables (packet filtering ruleset), sshd (Secure Shell).
Διδακτικές και Μαθησιακές Μέθοδοι
Πρόσωπο με πρόσωπο θεωρητική διδασκαλία.
Εργαστηριακή εκπαίδευση και εξάσκηση πάνω σε εικονικούς σταθμούς εργασίας που λειτουργούν με τις διανομές Xubuntu/Fedora/Centos. (Χρήση ατομικών λογαριασμών χρηστών)
Τρόποι αξιολόγησης / εξέτασης
Ι. Γραπτή τελική εξέταση (ΓΕ) (50%)
- Επίλυση προβλημάτων
- Δοκιμασία Πολλαπλής Επιλογής, Ερωτήσεις Σύντομης Απάντησης.
ΙΙ. Εργαστηριακή εξέταση (ΕΕ) (50%)
- Εργαστηριακές ασκήσεις
Ο βαθμός του μαθήματος (ΓΕ*0,50 + ΕΕ*0,50) πρέπει να είναι τουλάχιστον πέντε (5).
Προϋπόθεση βαθμολόγησης του μαθήματος είναι οι βαθμοί της Γραπτής Εξέτασης (ΓΕ) και της Εργαστηριακής Εξέτασης (ΕΕ) να είναι μεγαλύτεροι του τέσσερα (4).
Βιβλιογραφία
Ελληνικά ή μεταφρασμένα διδακτικά συγγράμματα:
- Σιδηρόπουλος Αντώνιος, “Εισαγωγή στα Λειτουργικά Συστήματα και το UNIX - LINUX, 2η Έκδοση”, Εκδόσεις Α. Τζιόλα & Υιοί Α.Ε., 2023, [Κωδικός Βιβλίου στον Εύδοξο: 122077484]
- Μάργαρης Αθανάσιος, "Linux ", 1η Έκδοση, Εκδόσεις Α. Τζιόλα & Υιοί Α.Ε., 2021, [Κωδικός Βιβλίου στον Εύδοξο: 102072090]
- Abraham Silberschatz, Peter Baer Galvin, Greg Gagne, "Λειτουργικά Συστήματα", 10η Έκδοση, Χ. ΓΚΙΟΥΡΔΑ ΣΙΑ ΕΕ, 2021, [Κωδικός Βιβλίου στον Εύδοξο: 102070659]
- Stallings William , “Λειτουργικά Συστήματα” 9η Εκδ., Εκδόσεις Α. Τζιόλα & Υιοί Α.Ε. , 2017 [Κωδικός Βιβλίου στον Εύδοξο: 68374433]
Συμπληρωματική Βιβλιογραφία:
- Andrew S. Tanenbaum, Herbert Bos,” Σύγχρονα Λειτουργικά Συστήματα” 4η Έκδοση, Εκδόσεις Κλειδάριθμος ΕΠΕ, 2018, [Κωδικός Βιβλίου στον Εύδοξο: 77108683]