2 Οκτ 2023 10:22 - Στέργιος Παπαδημητρίου

  Βιβλιογραφία για τα μαθήματα Λειτουργικά Συστήματα, Προηγμένα Θέματα Λειτουργικών Συστημάτων, Μεταγλωττιστές, Παράλληλος και Κατανεμημένος Υπολογισμός

Όλα τα ξενόγλωσσα βιβλία που θα χρησιμοποιήσω στις παρουσιάσεις υπάρχουν διαθέσιμα για

download από το site:


https://sourceforge.net/projects/booksforihucs/files/



Λειτουργικά Συστήματα και Προηγμένα Θέματα Λειτουργικών Συστημάτων


Τα μαθήματα αυτά είναι παρόμοια και το δεύτερο αποτελεί συνέχεια του πρώτου, και η βιβλιογραφία είναι η ίδια.


Η πρώτη βιβλιογραφική επιλογή θα είναι το βιβλίο "Λειτουργικά Συστήματα", Siberschatz, Galvin, Gagne, ("δεινόσαυροι") για τα Λειτουργικά 1 και

το βιβλίο "Linux: Αρχεία και Διεργασίες" του Α. Μάργαρη για τα Προηγγμένα Θέματα Λειτουργικών Συστημάτων.


Αξίζει να σημειωθεί ότι το βιβλίο του Α. Μάργαρη είναι το καλύτερο που υπάρχει για την περιγραφή σε λεπτομέρεια του σύγχρονου Linux kernel,

και αντίστοιχο δεν υπάρχει ούτε στην ξενόγλωσση βιβλιογραφία (υπάρχουν για παλιές versions του Linux kernel)!


Τα παραπάνω Ελληνικά βιβλία θα καλύπτουν πλήρως τις απαιτήσεις των εξετάσεων, αφού θα ζητηθεί να απαντηθεί υποσύνολο των θεμάτων.


Όμως συμπληρωματικά θα κάνω και υλικό από τα ξενόγλωσσα βιβλία.και συγκεκριμένα κυρίως από τα

Linux Device Driver Development του John Madieu, 2nd edition

και τα βιβλία του Kaiwan Billimoria,

Linux Kernel Programming, Part 1 και 2



Μεταγλωττιστές


Το βασικό βιβλίο το άλλαξα στο "An introduction to Compilers and Language Design ", του Douglas Twain.

Το σχετικό file ονομάζεται NewBookForCompilers.zip και περιέχει το .pdf του βιβλίου και τον source κώδικα που υλοποιεί τον compiler για την B-minor γλώσσα προγραμματισμού που χρησιμοποιεί ως παράδειγμα.


Από τα Ελληνικά το βιβλίο  ΣΧΕΔΙΑΣΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΜΕΤΑΓΛΩΤΤΙΣΤΩΝ, Keith D. Cooper, Linda Torczon που είναι η πρώτη επιλογή στον Εύδοξο, καλύπτει την περισσότερη από την ύλη που θα διδαχθεί, όμως έχει πάρα πολύ υλικό και είναι γενικά πιο θεωρητικό και δυσκολότερο.



Παράλληλος και Κατανεμημένος Υπολογισμός


Στα μαθήματα θα χρησιμοποιήσω πολύ τα ξενόγλωσσα, και συγκεκριμένα πρόκειται να χρησιμοποιήσω τα βιβλία

  1. "Data Parallel C++" που είναι εξαιρετικό για SIMD computation.και θα αποτελέσει το βασικό βιβλίο
  2. "Multicore And GPU Programming, An Integrated Approach", Gerassimos Barlas, 2023" το οποίο είναι τελείως πρόσφατο και φαίνεται ως το καλύτερο και πληρέστερο γενικό βιβλίο στον Παράλληλο Υπολογισμό.


Είχα χρησιμοποιήσει ήδη τα βιβλία

"Parallel And High Performance Computing, Robert Robey, Yuliana Zamora" και

"An Introduction to Parallel Programming, Peter Pacheco, Mattthew Malensek "

που επίσης είναι πολύ καλά.


Τα εργαστήρια του μαθήματος δεν θα γίνουν σε υπολογιστές για πρακτικούς λόγους (π.χ. είναι δύσκολη και χρονοβόρα η εγκατάσταση CUDA).

Η εξέταση θα γίνει με γραπτές εξετάσεις όπως στην θεωρία, και στην προβλεπόμενη ημερομηνία εξέτασης της θεωρίας.


Από τον Εύδοξο, το βασικό βιβλίο θα είναι του Διαμαντάρα, Παπαδάκη:

 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΥΣΤΗΜΑΤΩΝ ΠΑΡΑΛΛΗΛΗΣ ΕΠΕΞΕΡΓΑΣΙΑΣ, ΣΤΕΛΙΟΣ ΠΑΠΑΔΑΚΗΣ, ΚΩΣΤΑΣ ΔΙΑΜΑΝΤΑΡΑΣ

που είναι και η 1η επιλογή.