Παρουσίαση/Προβολή

Εικόνα επιλογής

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

(ΤΠ30Κ1) -  Γραμματικάκης Μιλτιάδης

Περιγραφή Μαθήματος

 

 

Τίτλος μαθήματος

 

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

 

Κωδικός

 

ΤΠ30Κ1, ΤΠ31Κ1

Εξάμηνο

 

Γ

 

Τύπος Μαθήματος :  Υ

 

Θεωρητικό

 

Εργαστηριακό

 

Ώρες/εβδομάδες

 

3

 

2

 

Διδακτικές μονάδες

 

6

 

 

 

 

 

Διδάσκοντες: Δρ. Μανιφάβας Χαράλαμπος

 

Ίδρυμα / Τμήμα: Τ.Ε.Ι. Κρήτης /Τμήμα Εφαρμοσμένης Πληροφορικής και Πολυμέσων

 

 

 

 

 

ΘΕΩΡΙΑ

 

 

 

Περιγραφή:

 

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

 

 

 

 

 

Περίγραμμα:

 

 

 

  1. Εισαγωγή

     

  • Τι είναι το λειτουργικό σύστημα

     

  • Βασικοί τύποι λειτουργικών συστημάτων

     

  • Βασικές έννοιες λειτουργικών συστημάτων

     

  • Δομή των λειτουργικών συστημάτων

     

Διεργασίες

  • Το μοντέλο των διεργασιών (processes, multi-programming)

     

  • Νήματα (threads)

     

  • Διαδιεργασιακή επικοινωνία (busywaiting, sleep/wakeup, semaphores)

     

  • Χρονοπρογραμματισμός (scheduling)

     

Αδιέξοδα

  • Υπολογιστικοί πόροι (resources)

     

  • Ανταγωνισμός στην χρήση κοινών πόρων και αδιέξοδα (deadlocks)

     

  • Μοντελοποίηση αδιεξόδων (dedalock modelling)

     

  • Αλγόριθμοι ανίχνευσης, ανάκαμψης και αποφυγής αδιεξόδων (deadlockdetection/avoidance/preventionalgorithms)

     

Διαχείριση Μνήμης

  • Βασικήδιαχείρισημνήμης (memory allocation, dynamic address relocation)

     

  • Eναλλαγή (swapping)

     

  • Εικονικήμνήμη (virtual memory, paging)

     

  • Αλγόριθμοιαντικατάστασηςσελίδων (page replacement algorithms)

     

Διαχείριση Αρχείων

  • Αρχεία και κατάλογοι (files & directories)

     

  • Υλοποίηση συστήματος αρχείων και καταλόγων (filesystemimplementation)

     

  • Διαχείριση και αξιοπιστία των συστημάτων αρχείων (filesystemmanagementandoptimisation/consistency/performance)

     

  • Παραδείγματα συστημάτων αρχείων

     

Διαχείριση συσκευών Εισόδου/Εξόδου

  • Αρχές του υλικού Εισόδου/Εξόδου (I/Ohardware)
  • Αρχές του λογισμικού Εισόδου/Εξόδου (I/Osoftware)
  • Δίσκοι και ρολόγια (Disks & Clocks)
  • Διασυνδέσεις με τον χρήστη (keyboard, mouse, monitor)

 

 

 

 

Εργαστήριο

 

 

 

Με την επιτυχή ολοκλήρωση του εργαστηρίου ο φοιτητής :

 

 

 

·         Γνωρίζει την δομή και οργάνωση ενός UNIXlike λειτουργικού συστήματος

 

·         Αξιοποιεί και συνδυάζει τις βασικές εντολές

 

·         Είναι σε θέση να γράφει απλά προγράμματα στο κέλυφος

 

 

 

Στη σειρά των εργαστηριακών ασκήσεων ο φοιτητής:

 

 

 

·         Μαθαίνει τα βασικά: είσοδος και έξοδος στο σύστημα, μερικές απλές  εντολές, διόρθωση λαθών πληκτρολόγησης

 

·         Μαθαίνει εντολές συλλογής πληροφοριών για το σύστημα

 

·         Γνωρίζει την οργάνωση των δικαίωμάτων σε ένα linux σύστημα και τις εντολές αλλαγής δικαιωμάτων

 

·         Μαθαίνει για το ηλεκτρονικό ταχυδρομείο, τον επεξεργαστή κειμένου vi, επικοινωνία μεταξύ τερματικών

 

·         Μαθαίνει το σύστημα διαχείρισης αρχείων και καταλόγων

 

·         Μαθαίνει απλά φίλτρα όπως το sort και το grep

 

·         Γνωρίζει τον ερμηνευτή διαταγών - συντομογραφίες ονομάτων αρχείων, ανακατεύθυνση εισόδου-εξόδου

 

·         Μαθαίνει να προγραμματίζει στο κέλυφος, να χειρίζεται  ελέγχους ροής και μεταβλητές

 

 

 

 

 

Βιβλιογραφία:

 

 

 

1.       Σύγχρονα Λειτουργικά Συστήματα, Andrew S. Tanenbaum, Έκδοση: 2, Εκδόσεις Κλειδάριθμος, 2002, ISBN 9602095865

 

2.       “Modern Operating Systems”, Andrew S. Tanenbaum, 3rd Edition,Publisher: Prentice Hall, 2008, ISBN13 9780138134594

 

3.       “Operating System Concepts”, Avi Silberschatz, Peter Baer Galvin and Greg Gagne, 8th  Edition, Publisher: John Wiley & Sons, Inc., 2008, ISBN 0470128720

 

      http://codex.cs.yale.edu/avi/os-book/os8/index.php

 

 

 

 

 

Μέθοδος διδασκαλίας:

 

 

 

·         Διαλέξεις υποστηριζόμενες με διαφάνειες και χρήση PowerPoint.

 

·         Εργαστηριακές ασκήσεις.

 

·

 

 

 

Αξιολόγηση:

 

 

 

Θεωρία: Προαιρετική πρόοδος (40%), τελική γραπτή εξέταση στο σύνολο της ύλης (100%).

 

Εργαστήριο: Συμμετοχή στην εκπόνηση και παραδοτέα εργαστηριακών ασκήσεων (60%), τελική γραπτή εξέταση με βάση την ύλη του εργαστηρίου(40%).

Ημερομηνία δημιουργίας

Πέμπτη 15 Οκτωβρίου 2009