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

Μαθησιακά Αποτελέσματα

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

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

  • να κατανοεί τα βασικά και κρίσιμα χαρακτηριστικά της σχεδίασης, υλοποίησης και ανάλυσης συστημάτων μεταγλωττιστών για σύγχρονες γλώσσες προγραμματισμού
  • να γνωρίζει τα κύρια χαρακτηριστικά των εργαλείων και των τεχνικών δημιουργίας σύγχρονων γλωσσών προγραμματισμού.

Περιεχόμενα

  • Εισαγωγή – Γενικά χαρακτηριστικά σύγχρονων γλωσσών προγραμματισμού.
  • Ορισμός Γλωσσών (Κανονικές Εκφράσεις – Αυτόματα – Γραμματικές Context-Free).
  • Δομή γλωσσών προγραμματισμού (Μεταβλητές, Τύποι και Εμβέλεια, Έλεγχος Ροής και Αποτίμηση Εκφράσεων, Υπορουτίνες, Επαναληπτικές και Αναδρομικές Διαδικασίες, Διαχείριση Μνήμης και Επικοινωνία).
  • Η διαδικασία της μεταγλώττισης/διερμηνείας (Λεκτική Ανάλυση, Συντακτική Ανάλυση, Παραγωγή & Βελτιστοποίηση Κώδικα, Σύνδεση).

Προτεινόμενα Συγγράμματα

  • Scott, M. L., Πραγματολογία των γλωσσών Προγραμματισμού, 2η αμερικ. έκδοση, ΕΚΔΟΣΕΙΣ ΚΛΕΙΔΑΡΙΘΜΟΣ, 2009
  • Σημειώσεις διδάσκοντα

Πρόσθετη Βιβλιογραφία

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

Κβαντική Υπολογιστική

Μαθησιακά Αποτελέσματα

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

Περιεχόμενα

  • Μαθηματικό Υπόβαθρο
    • Στοιχεία Γραμμικής Άλγεβρας, Στοιχεία Μιγαδικής Ανάλυσης
  • Στοιχεία Κβαντικής Φυσικής
    • Κβαντομηχανικές Ιδιότητες σε ηλεκτρόνια και φωτόνια (spin, πόλωση) – Κβαντομηχανικά Πειράματα
  • Qubits και τα Χαρακτηριστικά τους
    • Αναπαράσταση, Υπέρθεση, Τανυστικό Γινόμενο, Διεμπλοκή, Μέτρηση, Ανισότητα του Bell
  • Κλασσική Λογική, Πύλες και Κυκλώματα
  • Κβαντικές Πύλες και Κυκλώματα
  • Κβαντικοί Αλγόριθμοι
    • Deutsch-Josza, Simon, Grover, QFT, Shor
  • Περιβάλλοντα Κβαντικού Προγραμματισμού

Προτεινόμενα Συγγράμματα

  • Nielsen, M. A., Chuang, I. L., Quantum Computation and Quantum Information, Cambridge University Press, 2010.
  • Σημειώσεις Διδάσκοντα

Πρόσθετη βιβλιογραφία

  • Στο σύστημα ΕΥΔΟΞΟΣ αναρτώνται σε ηλεκτρονική μορφή χρήσιμες πληροφορίες καθώς και ασκήσεις για την εξάσκηση των φοιτητών/τριών.

Εισαγωγή στα Υπολογιστικά Νέφη

Μαθησιακά Αποτελέσματα

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

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

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

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

Περιεχόμενα

  • Εισαγωγή στα υπολογιστικά νέφη
  • Στόχοι, προκλήσεις, τομείς εφαρμογής, πλεονεκτήματα
    • Αρχιτεκτονικές υπολογιστικών και αποθηκευτικών νεφών
    • Συμβόλαια παροχής υπηρεσιών, φάσεις εκτέλεσης εργασιών και υπηρεσιών
  • Μοντέλα ανάπτυξης, διασύνδεσης και διαχείρισης υποδομών νέφους
    • Μοντέλα διακριτών επιπέδων, παροχής υπηρεσιών, πρόσβασης και ανάπτυξης
    • Τεχνικές ελαστικότητας και κλιμάκωσης
    • Προσεγγίσεις διαχείρισης πληροφορίας και χρεώσεων
  • Υλοποίηση και λειτουργία υπολογιστικών νεφών
    • Επίπεδο εφαρμογής (Software as a Service)
    • Επίπεδο πλατφόρμας (Platform as a Service)
    • Επίπεδο υποδομής (Infrastructure as a Service)
    • Εικονικοιποίηση και διαχείριση πόρων
  • Υλοποίηση και λειτουργία αποθηκευτικών νεφών
    • Κατανεμημένα συστήματα αποθήκευσης αντικειμένων δεδομένων
    • Αποθήκευση και ανάκτηση δεδομένων βάσει περιεχομένου
    • Εκτέλεση υπολογιστικών εργασιών σε αποθηκευμένα δεδομένα
  • Προσεγγίσεις παροχής ποιότητας υπηρεσιών
    • Κατηγορίες παραμέτρων και απαιτήσεων
    • Μηχανισμοί εποπτείας και ελέγχου
    • Τεχνολογίες διασφάλισης ποιότητας
  • Εργαστηριακές ασκήσεις
    • Google AppEngine
    • OpenStack
    • Apache Hadoop / MapReduce

Προτεινόμενα Συγγράμματα

  • Α. Velte, T. Velte, R. Elsenpeter, «Cloud Computing Μια Πρακτική Προσέγγιση» (μεταφρασμένο)
  • T. Erl, «Cloud Computing: Concepts, Technology & Architecture»
  • B. Sosinsky, «Cloud Computing Bible»G. Reese, «Cloud Application Architectures: Building Applications and Infrastructure in the Cloud»
  • R. Buyya, J. Broberg, A. M. Goscinski, «Cloud Computing, Principles and Paradigms»

Πρόσθετη Βιβλιογραφία

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

Ψηφιακή Επεξεργασία Εικόνας

Μαθησιακά Αποτελέσματα

Η όραση προσφέρει στον άνθρωπο εξαιρετικά σημαντικές ζωτικές πληροφορίες όσο καμία άλλη αίσθηση.  Η σημασία που αποδίδεται στην αίσθηση της όρασης διακρίνεται σε όλες τις εκφάνσεις των ανθρωπίνων δραστηριοτήτων και ειδικότερα σε αυτές που σχετίζονται με το χώρο της επιστήμης. Με τη βοήθεια της πληροφορικής αναπτύχθηκαν τα τελευταία χρόνια νέα επιστημονικά πεδία έρευνας σχετικά με την επεξεργασία των οπτικών πληροφοριών. Η ψηφιακή επεξεργασία εικόνας χρησιμοποιείται για δύο διακριτούς σκοπούς: (1) τη βελτίωση της εμφάνισης της εικόνας, έτσι ώστε να διευκολύνεται η ερμηνεία τους από κάποιο παρατηρητή και  (2) την ψηφιακή ανάλυση της εικόνας με σκοπό την περιγραφή, αναγνώριση και ερμηνεία του περιεχομένου μιας εικόνας. Στο πλαίσιο του μαθήματος θα παρουσιαστούν οι βασικοί αλγόριθμοι και μεθοδολογίες και για τους δυο σκοπούς τόσο στο πεδίο του χώρου όσο και στο πεδίο των συχνοτήτων.

Οι φοιτητές μετά την επιτυχή ολοκλήρωση του μαθήματος θα είναι σε θέση να:

A)     Να κατανοούν τις βασικές μεθοδολογίες βασικές γνώσεις από την σχεδίαση και ανάπτυξη συστημάτων επεξεργασίας εικόνας

B)     Να γνωρίζουν τα στάδια επεξεργασίας και ανάλυσης ψηφιακών εικόνων (οπτικοί αισθητήρες, ψηφιοποίηση, επεξεργασία, κωδικοποίηση, συμπίεση, μετάδοση, τμηματοποίηση, αναγνώριση)

Γ)     Να αναλύουν προβλήματα σε διάφορα πεδία εφαρμογών και να επιλέγουν σωστούς μηχανισμούς για την διαχείριση και επεξεργασία ψηφιακών εικόνων

Δ)     Να αξιολογούν τα συστήματα επεξεργασίας ψηφιακών εικόνων

Περιεχόμενα

  • Εισαγωγή στην Ψηφιακή Επεξεργασία Εικόνων
  • 2-Δ σήματα και συστήματα – Βασικές έννοιες
  • Δειγματοληψία και Ψηφιοποίηση Εικόνων
  • Βελτίωση και Αποκατάσταση Εικόνας
  • Επεξεργασία Δυαδικών Εικόνων – Μορφολογικοί Τελεστές
  • Τμηματοποίηση Εικόνας – Αναγνώριση Περιγραμμάτων
  • Μετασχηματισμοί (Fourier, DCT, Hadamard κ.λπ.)
  • Φυσική σημασία και ιδιαιτερότητες του πεδίου συχνοτήτων
  • Συμπίεση Ψηφιακών Εικόνων
  • Ανάλυση Ψηφιακών Εικόνων – Όραση Υπολογιστή
  • Ανάλυση Υφής – Περιγραφή Σχήματος / Αντικειμένου
  • Επεξεργασία και Ανάλυση Ακολουθίας Εικόνων
  • Άλλες περιοχές: Π.χ. Υδατογράφηση, Ανάκτηση Πληροφορίας κλπ.

Προτεινόμενα Συγγράμματα

  • Ψηφιακή Επεξεργασία και Ανάλυση Εικόνας, Παπαμάρκος Νικόλαος
  • Ψηφιακή Επεξεργασία Εικόνας, Gonzales
  • Ψηφιακή Επεξεργασία Εικόνας, Ιωάννης Πήτας

Πρόσθετη Βιβλιογραφία

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

Ασφάλεια Δικτύων

Μαθησιακά Αποτελέσματα

Στόχος του μαθήματος είναι η παρουσίαση και η ανάλυση των μέτρων που εφαρμόζονται σε μια δικτυακή υποδομή, των πολιτικών που υιοθετούνται από τον διαχειριστή του δικτύου για να προστατεύσουν το δίκτυο και τους πόρους του από μη εξουσιοδοτημένη πρόσβαση, καθώς και η αποτελεσματικότητα (ή η έλλειψη) αυτών. Το μάθημα εστιάζει στην ασφάλεια των ενσύρματων – σταθερών δικτύων τα οποία χρησιμοποιούν την τεχνολογία του Διαδικτύου. Παρουσιάζονται και αναλύονται οι μηχανισμοί και τα πρωτόκολλα ασφάλειας που διασφαλίζουν τη λειτουργία των παραπάνω δικτύων καθώς και τα δεδομένα των χρηστών τους.

Με την επιτυχή ολοκλήρωση του μαθήματος ο φοιτητής / τρια θα έχει εξοικειωθεί και θα εφαρμόζει διαφορετικά μέτρα και τεχνικές ασφάλειας που εφαρμόζονται στα ενσύρματα δίκτυα τα οποία έχουν σαν στόχο να παρέχουν υπηρεσίες ασφάλειας στους χρήστες ενός δικτύου καθώς και στους παρόχους αυτού.

Περιεχόμενα

  • Ασφάλεια σε διαφορετικά επίπεδα της διαστρωμάτωσης OSI, όπως
    • σε επίπεδο σύνδεσης (layer 2),
    • σε επίπεδο δικτύου (layer 3)
    • σε επίπεδο εφαρμογής (application layer).
  • Πρωτόκολλα διαχείρισης κλειδιών και πρωτόκολλα διαχείρισης ταυτοτήτων.
  • Αναχώματα ασφάλειας (firewalls) και συστήματα αναγνώρισης εισβολέων.
  • Η έννοια της εμπιστοσύνης στα δίκτυα καθώς και η διαχείριση τής.
  • Συστήματα κατανεμημένης αυθεντικοποίησης.

Προτεινόμενα Συγγράμματα

  • Γκρίτζαλης Σ. & Κάτσικας Σ. & Γκρίτζαλης Δ. (2003): Ασφάλεια Δικτύων Υπολογιστών: Τεχνολογίες και Υπηρεσίες σε Περιβάλλοντα Ηλεκτρονικού Επιχειρείν και Ηλεκτρονικής Διακυβέρνησης, Εκδόσεις Παπασωτηρίου.
  • Κομνηνός Θ. & Σπυράκης Π. (2002): Ασφάλεια Δικτύων και Υπολογιστικών Συστημάτων, Εκδόσεις Ελληνικά Γράμματα.
  • Stallings, W. (2007): Network Security Essentials, Applications and Standards, 3rd Edition, Prentice Hall.
  • Kaufman, C., Perlman, R. & Speciner, M. (2002): Network Security: Private Communication in a Public World, 2nd Edition, Prentice Hall.

Πρόσθετη Βιβλιογραφία

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

Δίκτυα Υπολογιστών ΙΙ

Μαθησιακά Αποτελέσματα

Στόχος του μαθήματος «Δίκτυα Υπολογιστών ΙI» είναι να συμπληρώσει τη διδασκαλία του μαθήματος «Δίκτυα Υπολογιστών Ι», ώστε οι φοιτητές να εμβαθύνουν τις γνώσεις τους στα Δίκτυα Υπολογιστών και να κατανοήσουν τις λειτουργίες τους. Πιο συγκεκριμένα, μέσω του μαθήματος αυτού οι φοιτητές θα γνωρίσουν τη λειτουργία του επιπέδου σύνδεσης δεδομένων (data link layer), του υπο-επιπέδου ελέγχου πρόσβασης στο μέσο (Medium Access Control – MAC) και του υπο-επιπέδου ελέγχου λογικής ζεύξης (Logical Link Control – LLC).

Με την επιτυχή ολοκλήρωση του μαθήματος, ο φοιτητής/τρια θα είναι σε θέση:

  • να αντιληφθεί, να επιλέξει και να εφαρμόσει τεχνικές ελέγχου/ανίχνευσης (parity bit και CRC) και διόρθωσης λαθών (hamming),
  • να αντιληφθεί, να επιλέξει και να εφαρμόσει τεχνικές αναμετάδοσης πληροφορίας μέσω του Δικτύου Υπολογιστών,
  • να χρησιμοποιήσει τα αντίστοιχα πρωτόκολλα επικοινωνίας
  • να συνδυάσει τις γνώσεις του αναφορικά με τη δρομολόγηση και τη χρήση του καταλληλότερου πρωτοκόλλου αναλόγως τις ανάγκες του δικτύου, με τις τεχνικές διόρθωσης και αναμετάδοσης λαθών,
  • να υλοποιήσει τις τεχνικές αυτές σε τεχνικό επίπεδο.

Περιεχόμενα

  • Ενότητα 1: Εισαγωγή. Έννοιες επίπεδο σύνδεσης δεδομένων (Data Link Layer), ελέγχου πρόσβασης στο μέσο (MAC) και ελέγχου λογικής σύνδεσης (LLC), έλεγχος λαθών (error control), ανίχνευση λαθών (error detection), διόρθωση λαθών (error correction), αναμετάδοση (retransmission).
  • Ενότητα 2: Λειτουργίες ανίχνευσης λαθών. Τεχνική Parity bit. CRC (Cyclic Redundancy Codes).Θεωρία, Ασκήσεις, προγραμματιστικές ασκήσεις.
  • Ενότητα 3: Error correction. Τεχνικές Hamming διόρθωσης ενός ή πολλαπλών λαθών. Θεωρία, Ασκήσεις, Προγραμματιστικές Ασκήσεις.
  • Ενότητα 4: Τεχνικές αναμετάδοσης. Stop-and-Wait (S&W), Alternating bit protocol (ABP), Automatic repeat request (ARQ). Sliding Window, Go Back N (GBN), Selective Repeat (SRP).Θεωρία,Ασκήσεις,ΕργαστηριακέςΑσκήσεις
  • Ενότητα 5: Πρωτόκολλα MAC. Aloha, Carrier Sense Multiple Access (CSMA). MAC πρωτόκολλα σε WLAN/WMAN/WPAN. Πρωτόκολλα ΙΕΕΕ 802.x. Θεωρία, ασκήσεις, προγραμματιστικές ασκήσεις.
  • Ενότητα 6: Πρωτόκολλo LLC. Πρότυπο 802.2.

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

Προτεινόμενα Συγγράμματα

  • Jean Walrand: «Δίκτυα Επικοινωνιών», (μεταφρασμένο).
  • Travis Russell: «Τηλεπικοινωνιακά πρωτόκολλα»

Συναφή επιστημονικά περιοδικά:

  • ΙΕΕΕ Computer Networks
  • IEEE Communications Magazine
  • EEE Access
  • IEEE Wireless Communications
  • International Journal of Network Management
  • Transactions on Emerging Telecommunications Technologies
  • EURASIP Journal on Wireless Communications and Networking.

Ευρυζωνικά Δίκτυα

Μαθησιακά Αποτελέσματα

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

Με την επιτυχή ολοκλήρωση του μαθήματος, ο φοιτητής/τρια θα διαθέτει προχωρημένες γνώσεις στο πεδίο των βασικών αρχών, τεχνικών, τεχνολογιών και αρχιτεκτονικών Ευρυζωνικών Δικτύων.

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

Περιεχόμενα

  • Εισαγωγή στα ευρυζωνικά δίκτυα
    • Εισαγωγικές έννοιες δικτύων
    • Εισαγωγικές έννοιες ψηφιακής μετάδοσης
    • Πολυπλεξία, διασπορά φάσματος και μεταγωγή
    • Υλικά μέσα διάδοσης
  • Τεχνολογίες ενσύρματης πρόσβασης
    • Τηλεφωνικό Δίκτυο (PSTN)
    • Digital subscriber line (DSL)
    • Ethernet
  • Ασύρματες ευρυζωνικές τεχνολογίες
    • Κυψελωτά συστήματα 3ης, 4ης και 5ης γενιάς
    • Τοπικά δίκτυα (WiFi -IEEE 802.11)
    • Δίκτυα Internet of Things
  • Τεχνολογίες κορμού
    • Δίκτυα Ethernet
    • Οπτικές τεχνολογίες

Προτεινόμενα Συγγράμματα

  • Russell Τ. (2001): Τηλεπικοινωνιακά Πρωτόκολλα (μεταφρασμένο), Εκδόσεις Τζιόλα.

Πρόσθετη Βιβλιογραφία

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