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


Στο μάθημα καλύπτονται οι βασικές έννοιες και αρχές των λειτουργικών συστημάτων, περιγράφονται σε βάθος τα διάφορα συστατικά τους στοιχεία (διαχειριστές επεξεργαστή, μνήμης, εισόδου/εξόδου, αρχείων) και καλύπτονται θέματα που επηρεάζουν όλα τα συστατικά (αδιέξοδα, ασφάλεια). Αφού τεθεί το ιστορικό πλαίσιο εξέλιξης των λειτουργικών συστημάτων, παρουσιάζονται διάφορες σχεδιαστικές προσεγγίσεις για κάθε συστατικό στοιχείο. Έμφαση δίνεται στα προβλήματα υλοποίησης κάθε συστατικού των λειτουργικών συστημάτων, παρουσιάζοντας διάφορες λύσεις που έχουν χρησιμοποιηθεί σε πραγματικά συστήματα. Το μάθημα κλείνει με δύο μελέτες περίπτωσης, μία για το UNIX γενικά και ειδικά για το Linux, και μία για τα Microsoft Windows. Το εργαστηριακό μέρος του μαθήματος επικεντρώνεται στη χρήση των μηχανισμών του Linux (και γενικά του UNIX) για διαχείριση, επικοινωνία και συγχρονισμό διεργασιών και νημάτων. Το σχετικό υλικό παρουσιάζεται σε φροντιστηριακές διαλέξεις, εφαρμόζεται σε εργαστηριακά μαθήματα και αξιολογείται μέσω δύο προγραμματιστικών εργασιών που περιλαμβάνονται στη βαθμολόγηση του μαθήματος.


Στόχοι Μαθήματος

Κατανόηση της δομής των Λειτουργικών Συστημάτων Εξοικείωση με διάφορες σχεδιαστικές προσεγγίσεις Κατανόηση των βασικών προβλημάτων υλοποίησης Εξοικείωση με την προσέγγιση του UNIX (μέσω του Linux)


Προαπαιτούμενες Γνώσεις

Προγραμματισμός Υπολογιστών με C++ Οργάνωση Συστημάτων Υπολογιστών


Περιεχόμενα

Ορισμός, ιστορία και δομή Λειτουργικών Συστημάτων (ΛΣ). Βασικές έννοιες ΛΣ. Κλήσεις συστήματος. Διεργασίες και νήματα. Διαδιεργασιακή επικοινωνία. Χρονοπρογραμματισμός επεξεργαστή. Χώροι διευθύνσεων και εικονική μνήμη. Υλοποίηση εικονικής μνήμης με σελιδοποίηση και τμηματοποίηση. Αρχεία και κατάλογοι. Υλοποίηση και βελτιστοποίηση συστημάτων αρχείων. Αρχές υλικού και λογισμικού εισόδου-εξόδου. Διακοπές, οδηγοί συσκευών και παραδείγματα διαχείρισης συσκευών. Πόροι, αδιέξοδα πόρων και αντιμετώπισή τους. Ασφάλεια και κρυπτογραφία. Προστασία ΛΣ και ταυτοποίηση χρηστών. Είδη επιθέσεων, κακόβουλο λογισμικό και τρόποι άμυνας. Linux και UNIX, υλοποίηση των βασικών συστατικών του Linux. Microsoft Windows, υλοποίηση των βασικών συστατικών των Windows. Διαχείριση διεργασιών και νημάτων POSIX στο Linux, επικοινωνία και συγχρονισμός διεργασιών και νημάτων. Αρχές σχεδίασης λειτουργικών συστημάτων.

ΤΑΥΤΟΤΗΤΑ ΜΑΘΗΜΑΤΟΣ

Βαθμίδα:

Τύπος:

Προπτυχιακό

(A+)


Εκπαιδευτές: Γεώργιος Ξυλωμένος
Τμήμα: Πληροφορικής
Ίδρυμα: Οικονομικό Πανεπιστήμιο Αθηνών
Θεματική Περιοχή: Επιστήμες Υπολογιστών, Πληροφορικής, Τηλεπικοινωνιών
Άδεια Χρήσης: CC - Μη Εμπορική Χρήση - Όχι Παράγωγα Έργα

Επισκεφτείτε το μάθημα

ΜΟΙΡΑΣΤΕΙΤΕ ΤΟ ΜΑΘΗΜΑ
ΣΧΕΤΙΚΑ ΜΑΘΗΜΑΤΑ