Παράκαμψη προς το κυρίως περιεχόμενο

Στόχοι Μαθήματος: Κατανόηση των μηχανισμών με τους οποίους επιτυγχάνεται η πρόσβαση στις διάφορες μονάδες και βιβλιοθήκες ενός Λειτουργικού Συστήματος Unix με τη χρήση της γλώσσας προγραμματισμού C και διαφόρων κελυφών, όπως επίσης και τον ακριβή τρόπο με τον οποίο λειτουργούν αυτά τα συστήματα. Εκμάθηση πολυπρογραμματισμού και μεθόδων συγχρονισμού και επικοινωνίας διεργασιών (processes) και νημάτων (threads).

Μαθησιακά Αποτελέσματα: Βασικές γνώσεις λειτουργίας και προγραμματισμού Λειτουργικών Συστημάτων UNIX. Γνώσεις πολυπρογραμματισμού.

Περιεχόμενο Μαθήματος: Εισαγωγή στο Unix; Το Σύστημα Αρχείων (File System); Διεργασίες και Νήματα (Processes and Threads): Δημιουργία, Συγχρονισμός, Επικοινωνία, Σήματα (Signals), Σωληνώσεις (Pipes), TCP/UDP Sockets, Mutexes, Condition Variables, Κανονικές Εκφράσεις (Regular Expressions), Σενάρια Φλοιού (Shell Scripts), Φίλτρα (Filters).