Τεχνολογίες Πλατφορμών
Γενικά
Κωδικός: BSC_IT10
Γλώσσα: Αγγλικά
Τρόπος διδασκαλίας: Δια ζώσης
Προαπαιτούμενα: Κανένα
Φόρτος εργασίας
- Διαλέξεις: 39.0 ώρες
- Εργαστήριο: 13.0 ώρες
- Μελέτη: 70.0 ώρες
- Εργασία: 23.0 ώρες
Περιεχόμενο Μαθήματος
Εισαγωγή: Βασικές αρχές οργάνωσης και τεχνολογίας υπολογιστών. Προκλήσεις της σύγχρονης αρχιτεκτονικής. Εντολές και επίπεδα αναπαράστασης. Αναπαράσταση αριθμητικών και μη αριθμητικών δεδομένων. Οργάνωση τυπικού υπολογιστή και Αρχιτεκτονική Συνόλου Εντολών (ISA). Μικροαρχιτεκτονική, υπολογιστές RISC και CISC.
Αρχιτεκτονική RISC-V: Καταχωρητές, τύποι εντολών (R, I, S, B, U, J) και κωδικοποίηση. Τρόποι διευθυνσιοδότησης. Αριθμητικές και λογικές πράξεις, εντολές μεταφοράς δεδομένων. Λειτουργίες ελέγχου ροής. Υποστήριξη διαδικασιών (procedures) στο υλικό και χρήση της στοίβας (stack). Βασικές αρχές μεταγλωττιστών.
Αξιολόγηση Απόδοσης: Μέτρηση και κατανόηση παραγόντων απόδοσης και ο Νόμος του Amdahl. Σχεδιασμός Επεξεργαστή: Σχεδίαση διαδρομής δεδομένων (datapath), υλοποίηση ενός κύκλου και σχεδιασμός μονάδας ελέγχου. Διοχέτευση (Pipelining): Βασικές αρχές, υλοποίηση διοχέτευσης σε RISC-V, κίνδυνοι (hazards: δεδομένων, ελέγχου, δομικοί), προώθηση (forwarding), καθυστερήσεις (stalls) και πρόβλεψη διακλάδωσης (στατική και δυναμική). Ιεραρχία Μνήμης: Κρυφή μνήμη (cache), μέτρηση και βελτίωση απόδοσης, εικονική μνήμη.
Τεχνολογίες Πλατφόρμας: Εισαγωγή στην Εικονοποίηση (Virtualization – Hypervisors και εικονοποίηση υποβοηθούμενη από το υλικό). Χρήση Περιεκτών (Containerization – Linux namespaces και cgroups). Υποδομές Υπολογιστικού Νέφους (Cloud Computing – IaaS, PaaS, SaaS). Εισαγωγή στην Υπολογιστική Μεγάλης Κλίμακας (Warehouse-Scale Computing) και στη διαχείριση κατανεμημένων πόρων.
Εργαστήριο: Ασκήσεις στο σύνολο εντολών RISC-V. Προγραμματισμός σε συμβολική γλώσσα (Assembly). Χρήση του προσομοιωτή RARS/Venus για κλήσεις συστήματος και ανάλυση απόδοσης. Πρακτική εισαγωγή σε περιβάλλοντα Εικονοποίησης και Υπολογιστικού Νέφους (Virtualization Cloud).
Μαθησιακά Αποτελέσματα
Ο στόχος του μαθήματος είναι να προσφέρει στις φοιτήτριες και στους φοιτητές το απαραίτητο υπόβαθρο στην οργάνωση υπολογιστών, την αρχιτεκτονική και τις υποδομές πλατφορμών. Στο πλαίσιο του μαθήματος, διδάσκεται η οργάνωση και ο σχεδιασμός ενός υπολογιστή με χρήση της αρχιτεκτονικής RISC-V, καθώς και η διεπαφή μεταξύ υλικού (hardware) και λογισμικού (software).
Επιπλέον, το μάθημα επεκτείνεται στην αφαίρεση των φυσικών πόρων μέσω virtualization και χρήσης container, παρέχοντας τις βάσεις για την κατανόηση των εννοιών που διέπουν τις σύγχρονες πλατφόρμες υπολογιστικού νέφους (IaaS, PaaS, SaaS).
Το μάθημα απευθύνεται σε άτομα που ενδιαφέρονται για τη σχεδίαση υλικού, την ανάπτυξη λογισμικού και την ενορχήστρωση συστημάτων (system orchestration). Παρέχει επίσης το απαραίτητο υπόβαθρο για την παρακολούθηση μαθημάτων σχετικών με την προχωρημένη αρχιτεκτονική υπολογιστών, τα κατανεμημένα συστήματα και την υπολογιστική μεγάλης κλίμακας (warehouse-scale computing).
Δεξιότητες
Αναζήτηση, ανάλυση και σύνθεση δεδομένων και πληροφοριών, με τη χρήση και των απαραίτητων τεχνολογιών
Προσαρμογή σε νέες καταστάσεις
Λήψη αποφάσεων
Αυτόνομη εργασία
Ομαδική εργασία
Προαγωγή της ελεύθερης, δημιουργικής και επαγωγικής σκέψης
