ΧΕΙΜΕΡΙΝΟ ΕΞAΜΗΝΟ 2020-21 / FALL TERM 2020-21

MYY502 -- Προγραμματισμός Συστημάτων / Systems Programming

Καλωσήρθατε στην ιστοσελίδα του μαθήματος MYY502 - Προγραμματισμός Συστημάτων. Ο σκοπός του μαθήματος είναι διπλός:

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

(β) εισαγωγή στις βασικές αρχές του προγραμματισμού σε επίπεδο συστήματος, κάνοντας χρήση των κλήσεων και των εργαλείων που παρέχουν τα λειτουργικά συστήματα τύπου Unix/POSIX.

E-course: η σελίδα του μαθήματος στο e-course.

MS-Teams: Για το πρώτο μάθημα (5/10/2020) ο κωδικός της ομάδας είναι ahouvwg. Στο πρώτο μάθημα θα δοθεί και ο κωδικός πρόσβασης για το e-course.

Ανακοινωσεις / Announcements

  • Τελικοί βαθμοί μαθήματος (Εξεταστική Σεπτεμβρίου).
    Μπορείτε να δείτε την τελική βαθμολογία σας στο μάθημα εδώ.
  • Συμμετοχή στην εξέταση Σεπτεμβρίου.
    Η εξέταση του μαθήματος τον Σεπτέμβριο 2021 (για όσους έχουν κατοχυρώσει το εργαστήριο) θα γίνει μέσω της πλατφόρμας MS Teams και του e-course. Οι φοιτητές που πληρούν τις προϋποθέσεις όπως έχουν καθοριστεί από το Πανεπιστήμιο Ιωαννίνων, θα πρέπει να δηλώσουν την πρόθεσή τους να συμμετάσχουν στις εξετάσεις συμπληρώνοντας την φόρμα αυτή έως 19/9/2021, 23:59.
  • Τελικοί βαθμοί μαθήματος (Εξεταστική Ιουνίου 2021, επί πτυχίω).
    Μπορείτε να δείτε την τελική βαθμολογία σας στο μάθημα εδώ.
  • Τελικοί βαθμοί εργαστηρίων (μετά την επιπλέον πρόοδο).
    Έχει ολοκληρωθεί η βαθμολόγηση της επιπλέον προόδου. Μπορείτε να δείτε τον βαθμό σας αλλά και την τελική βαθμολογία σας στα εργαστήρια εδώ.
  • Επιπλέον εργαστηριακή πρόοδος.

    Ανακοινώνεται ότι η επιπλέον εργαστηριακή πρόοδος για όσους απέτυχαν στο εργαστήριο του ΜΥΥ502 θα διεξαχθεί διαδικτυακά το Σάββατο, 13/3/2021 και ώρα 15:00-18:00 προκειμένου να μην συμπέσει με το κανονικό εβδομαδιαίο πρόγραμμα.

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

       Βαθμός = 50% ο βαθμός του εργαστηρίου που λάβατε τον Ιανουάριο + 
                50% ο βαθμός που θα λάβετε στην επιπλέον πρόοδο.
    Επιτυχία στο εργαστήριο σημαίνει αυστηρά Βαθμός >= 4.5. Επειδή πρόκειται για επιπλέον ευκαιρία που δίνεται σε όσους απέτυχαν, δεν πρόκειται να απαντηθεί καμία απορία, και δεν θα γίνει δεκτό κανένα αίτημα όταν η τελική βαθμολογία είναι 4.4 ή παρακάτω.

    Όσοι ενδιαφέρονται να συμμετέχουν πρέπει να συμπληρώσουν αυτή την φόρμα συμμετοχής μέχρι Δευτέρα, 8/3/2021.

  • Επιπλέον εξέταση εργαστηρίου για όσους απέτυχαν.
    Όπως ανακοινώθηκε στις διαλέξεις του μαθήματος, φέτος θα δοθεί μία επιπλέον εργαστηριακή πρόοδος για όσους απέτυχαν στο εργαστήριο. Η εξέταση σχεδιάζεται να πραγματοποιηθεί το αργότερο μέχρι τα μέσα Μαρτίου. Η ακριβής ημέρα και ώρα καθώς και οι λοιπές λεπτομέρειες της εξέτασης θα ανακοινωθούν στην ιστοσελίδα του διδάσκοντα και στο e-course, τα οποία πρέπει οι φοιτητές να παρακολουθούν.
  • Τελικοί βαθμοί μαθήματος (Εξεταστική Ιανουαρίου).
    Μπορείτε να δείτε την τελική βαθμολογία σας στο μάθημα εδώ.
  • Η τελική εξέταση του μαθήματος θα διεξαχθεί την Τρίτη 19/1/2021 (για όσους έχουν κατοχυρώσει το εργαστήριο) μέσω της πλατφόρμας MS Teams και του e-course. Οι φοιτητές που πληρούν τις προϋποθέσεις όπως έχουν καθοριστεί από το Πανεπιστήμιο Ιωαννίνων, θα πρέπει να δηλώσουν την πρόθεσή τους να συμμετάσχουν στις εξετάσεις συμπληρώνοντας τη φόρμα αυτή έως Παρασκευή, 15/1/2021, 23:59.
  • Ύλη εξετάσεων.
    Η ύλη για την τελική εξέταση περιλαμβάνει όλα τα θέματα που καλύφθηκαν στις παραδόσεις, όπως ειπώθηκε και στο μάθημα. Για τη δική σας βοήθεια παρακάτω υπάρχουν και οι σχετικές διαφάνειες.
  • Τελικοί βαθμοί εργαστηρίων.
    Έχει ολοκληρωθεί η βαθμολόγηση της 2ης πρόδου. Μπορείτε να δείτε τον βαθμό σας αλλά και την τελική βαθμολογία σας στα εργαστήρια εδώ. Τυχόν απορίες γίνονται δεκτές μέχρι και την Τρίτη, 12/1/2021.
  • Όπως έχει ήδη ανακοινωθεί, για την εξέταση της 2ης προόδου οι φοιτητές θα πρέπει, όπως και στην εξεταστική του Ιουνίου και Σεπτεμβρίου:
    • να διαθέτουν τον απαραίτητο εξοπλισμό (προσωπικό υπολογιστή, κάμερα, μικρόφωνο κλπ)
    • να έχουν μπροστά τους το φοιτητικό πάσο ή την αστυνομική τους ταυτότητα
    • να έχουν πρόσβαση στον ιδρυματικό τους λογαριασμό email (@uoi.gr)
    • να είναι συνδεδεμένοι στη σελίδα του μαθήματος στο e-course (όπου πρέπει να είναι εγγεγραμμένοι)
    • να μπορούν να συνδεθούν στα υπολογιστικά συστήματα του Τμήματος, μέσω remote login (π.χ. es1/es2/es3.cs.uoi.gr).
    Ως διαδικασία, η εξέταση αποτελείται από δύο μέρη για τα οποία θα πρέπει να είστε συνδεδεμένοι στην ομάδα MYY502 - Πρόοδος (2020-21) της πλατφόρμας MS Teams:
    1. ένα μέρος εξέτασης γνώσεων μέσω ερωτήσεων πολλαπλής επιλογής, το οποίο θα διεξαχθεί μέσω e-course (14.00-15:00 για όλους τους φοιτητές) -- κανάλι "Quiz 2ης Προόδου"
    2. ένα μέρος προγραμματισμού, το οποίο θα γίνει σε προσωρινούς λογαριασμούς που θα δημιουργηθούν στους υπολογιστές του τμήματος ειδικά για την πρόοδο, με βάρδιες σύμφωνα με τις καταστάσεις που έχουν ανακοινωθεί -- κανάλια Πρόοδος 2 - 1Α έως 2C.

    Η βαθμολογία θα προκύψει από τις ερωτήσεις πολλαπλής επιλογής (60%) και το πρόγραμμα (40%).

    Το προγραμματιστικό μέρος, όπως ειπώθηκε και στις διαλέξεις του μαθήματος θα διεξαχθεί ως εξής:
    1. Λίγα λεπτά πριν ξεκινήσει η εξέταση μίας ομάδας, θα αποσταλούν στο ιδρυματικό email του κάθε φοιτητή τα στοιχεία (username και password) για τον προσωρινό του λογαριασμό.
    2. Με τα στοιχεία αυτά ο φοιτητής πρέπει να συνδεθεί στο σύστημα που αναλογεί στη βάρδιά του (es1 ή es2 ή es3). με οποιονδήποτε διαθέσιμο τρόπο (π.χ. ssh, putty).
    3. Εκτελώντας την εντολή rupt, επιλέγει και συνδέεται με ssh σε οποιοδήποτε από τα μηχάνημα που έχουν μικρό φόρτο (λίγους ενεργούς χρήστες).
    4. Εκεί (σε όποιοδήποτε directory) πρέπει να γίνει η μετάφραση και η εκτέλεση του προγράμματος και εκεί πρέπει να αποθηκευτεί ο πηγαίος κώδικας σε γλώσσα C.
      » Δεν θα γίνει αποστολή του κώδικα με turnin.
      » Δεν γίνεται δεκτή αποστολή του κώδικα με email.
    Για μία ακόμη φορά επισημαίνεται ότι:
    • Ο κάθε φοιτητής είναι ελεύθερος να συντάξει και να δοκιμάσει το πρόγραμμά του όπου και όπως θέλει, όμως θα βαθμολογηθεί:
      • μόνο με βάση τον κώδικα που θα βρεθεί αποθηκευμένος στον προσωρινό του λογαριασμό (δεν θα γίνει δεκτό τίποτε άλλο), και
      • μόνο εφόσον ο κώδικας μεταφράζεται και εκτελείται επιτυχημένα στους υπολογιστές των εργαστηρίων.
    • Προκειμένου να αποφευχθεί η απώλεια αρχείων λόγω απρόβλεπτων τεχνικών προβλημάτων (π.χ. αποσυνδέσεις του δικτύου), οι φοιτητές είναι υπεύθυνοι και θα πρέπει να φροντίζουν να αποθηκεύουν συνεχώς τον κώδικα του προγράμματός τους στον προσωρινό λογαριασμό, με όποιο τρόπο κρίνουν βολικότερο. Δείτε και τον σχετικό οδηγό στη σελίδα των εργαστηρίων.
  • Η δεύτερη πρόοδος στα εργαστήρια θα γίνει, όπως έχει προγραμματιστεί, την Τρίτη, 15/12/2020 (την ώρα των εργαστηρίων) και θα διεξαχθεί σε 2 φάσεις:
    1. Στην πρώτη φάση (14:00-15:00) θα γίνει εξέταση όλων των φοιτητών μαζί με ερωτήσεις πολλαπλής επιλογής.
    2. Στη δεύτερη φάση (15:00-18:00) θα γίνει εξέταση προγραμματισμού κατά βάρδιες.
    Θα ακολουθήσει νεώτερη ανακοίνωση για την ακριβή διαδικασία καθώς και για την κατανομή των φοιτητών στις βάρδιες. Οι φοιτητές θα πρέπει, όπως και στην εξεταστική του Ιουνίου και Σεπτεμβρίου, να διαθέτουν τον απαραίτητο εξοπλισμό (κάμερα, μικρόφωνο κλπ) και να έχουν πρόσβαση στους λογαριασμούς τους (ιδρυματικό email, συστήματα Τμήματος κλπ).
  • Έχει ολοκληρωθεί η βαθμολόγηση της 1ης πρόδου. Εδώ μπορείτε να δείτε τη βαθμολογία σας. Οι φοιτητές που έχουν τυχόν απορίες θα γίνονται δεκτοί την Τρίτη, 8/12/2020, στις ώρες γραφείου του διδάσκοντα.
  • Όπως έχει ήδη ανακοινωθεί, η εξέταση της 1ης προόδου θα γίνει την Τρίτη, 24/11/2020, στις ώρες των εργαστηρίων και με βάση την κατάσταση εξέτασης που έχει αναρτηθεί στο e-course από την κα. Σταμάτη. Οι φοιτητές θα πρέπει, όπως και στην εξεταστική του Ιουνίου και Σεπτεμβρίου:
    • να διαθέτουν τον απαραίτητο εξοπλισμό (προσωπικό υπολογιστή, κάμερα, μικρόφωνο κλπ)
    • να έχουν μπροστά τους το φοιτητικό πάσο ή την αστυνομική τους ταυτότητα
    • να έχουν πρόσβαση στον ιδρυματικό τους λογαριασμό email (@uoi.gr)
    • να είναι συνδεδεμένοι στη σελίδα του μαθήματος στο e-course (όπου πρέπει να είναι εγγεγραμμένοι)
    • να μπορούν να συνδεθούν στα υπολογιστικά συστήματα του Τμήματος, μέσω remote login στη scylla (scylla.cse.uoi.gr).
    Ως διαδικασία, η εξέταση διαρκεί 50 λεπτά και αποτελείται από δύο μέρη:
    1. ένα μέρος εξέτασης γνώσεων μέσω ερωτήσεων πολλαπλής επιλογής, το οποίο θα διεξαχθεί μέσω e-course
    2. ένα μέρος προγραμματισμού, το οποίο θα γίνει σε προσωρινούς λογαριασμούς που θα δημιουργηθούν στους υπολογιστές του τμήματος ειδικά για την πρόοδο
    Το προγραμματιστικό μέρος, όπως ειπώθηκε και στις διαλέξεις του μαθήματος θα διεξαχθεί ως εξής:
    1. Λίγα λεπτά πριν ξεκινήσει η εξέταση μίας ομάδας, θα αποσταλούν στο ιδρυματικό email του κάθε φοιτητή τα στοιχεία (username και password) για τον προσωρινό του λογαριασμό.
    2. Με τα στοιχεία αυτά ο φοιτητής πρέπει να συνδεθεί στη scylla με οποιονδήποτε διαθέσιμο τρόπο (π.χ. ssh, putty).
    3. Εκτελώντας την εντολή rupt, επιλέγει και συνδέεται με ssh σε οποιοδήποτε από τα μηχάνημα που έχουν μικρό φόρτο (λίγους ενεργούς χρήστες).
    4. Εκεί (σε όποιοδήποτε directory) πρέπει να γίνει η μετάφραση και η εκτέλεση του προγράμματος και εκεί πρέπει να αποθηκευτεί ο πηγαίος κώδικας σε γλώσσα C. Δεν θα γίνει αποστολή του κώδικα με turnin.
    Για μία ακόμη φορά επισημαίνεται ότι:
    • Ο κάθε φοιτητής είναι ελεύθερος να συντάξει και να δοκιμάσει το πρόγραμμά του όπου και όπως θέλει, όμως θα βαθμολογηθεί:
      • μόνο με βάση τον κώδικα που θα βρεθεί αποθηκευμένος στον προσωρινό του λογαριασμό (δεν θα γίνει δεκτό τίποτε άλλο), και
      • μόνο εφόσον ο κώδικας μεταφράζεται και εκτελείται επιτυχημένα στους υπολογιστές των εργαστηρίων.
    • Προκειμένου να αποφευχθεί η απώλεια αρχείων λόγω απρόβλεπτων τεχνικών προβλημάτων (π.χ. αποσυνδέσεις του δικτύου), οι φοιτητές είναι υπεύθυνοι και θα πρέπει να φροντίζουν να αποθηκεύουν συνεχώς τον κώδικα του προγράμματός τους στον προσωρινό λογαριασμό, με όποιο τρόπο κρίνουν βολικότερο. Δείτε και τον σχετικό οδηγό στη σελίδα των εργαστηρίων.
  • Ανακοινώνονται τα παρακάτω για τις διαλέξεις, τα εργαστήρια και την 1η πρόοδο του μαθήματος:
    • Επειδή το 5ο εργαστήριο (17/11/2020) στο οποίο θα γινόταν η εξέταση της πρώτης προόδου συμπίπτει με την επέτειο του Πολυτεχνείου, η εξέταση της 1ης προόδου μετατίθεται μία εβδομάδα μετά και θα γίνει την Τρίτη, 24/11/2020 στις ώρες των εργαστηρίων.
    • Τo 6o εργαστήριο, θα διεξαχθεί εκτάκτως την Τετάρτη, 25/11/2020, στο δίωρο της διάλεξης, με σύμπτυξη των 2 βαρδιών.
    • Για τον λόγο αυτό, η διάλεξη της Τετάρτης, 25/11/2020, θα αναπληρωθεί το Σάββατο, 28/11/2020, ώρες 10:00-12.00.
    Θα ακολουθήσει νεώτερη ανακοίνωση για τον ακριβή τρόπο με τον οποίο θα διεξαχθεί η πρόοδος. Οι φοιτητές θα πρέπει, όπως και στην εξεταστική του Ιουνίου και Σεπτεμβρίου, να διαθέτουν τον απαραίτητο εξοπλισμό (κάμερα, μικρόφωνο κλπ) και να έχουν πρόσβαση στον λογαριασμό τους στα συστήματα του Τμήματος.
  • Εγγραφή εργαστηρίων για όσους το δηλώνουν ΠΡΩΤΗ ΦΟΡΑ.
    • » Φόρμα εγγραφής
         Η εγγραφή στα εργαστήρια είναι ΑΤΟΜΙΚΗ (όχι ομάδες) και ΥΠΟΧΡΕΩΤΙΚΗ για κάθε φοιτητή.
  • Όσοι έχουν ΚΟΠΕΙ στο εργαστήριο παλαιότερα θα πρέπει να συμπληρώσουν τα στοιχεία τους στην παρακάτω φόρμα. Όσοι δεν την συμπληρώσουν, ΔΕΝ θα γίνουν δεκτοί στις προόδους.
  • Όσοι έχουν ΚΑΤΟΧΥΡΩΣΕΙ το εργαστήριο θα πρέπει να συμπληρώσουν τα στοιχεία τους στην παρακάτω φόρμα. Όσοι δεν την συμπληρώσουν, ΔΕΝ θα γίνουν δεκτοί στις τελικές εξετάσεις σε περίπτωση έλλειψης χώρων.
  • Τα εργαστήρια ξεκινούν την Τρίτη 20/10/2020 και το 1ο εργαστήριο θα είναι εξ αποστάσεως. Το προγραμματιζόμενο πλάνο βρίσκεται στην ιστοσελίδα του εργαστηρίου.
  • Ώρες διδασκαλίας: Δευτέρα (12:00-14:00) και Τετάρτη (12:00-14:00)
    Ώρες εργαστηρίων: Τρίτη (14:00-16:00 και 16:00-20:00)

    » Τα εργαστήρια θα ξεκινήσουν την Τρίτη 20/10/2020.
    » Θα ενημερωθείτε με νεώτερη ανακοίνωση για τις λεπτομέρειες εγγραφής.

Επικοινωνια με τον διδασκοντα

"Piled Higher and Deeper" by Jorge Cham www.phdcomics.com.
  • Δια ζώσης / εξ αποστάσεως: (για απορίες, επεξηγήσεις)
    » Ώρες γραφείου διδάσκοντα: Τρίτη (09:00-11:00)
  • Τηλεφωνικά: (για κάτι επείγον)
    » 265100 8809
  • Με email:
    • » Δεν γίνεται επεξήγηση της ύλης από email
    • » Δεν απαντώνται θέματα που καλύπτονται στις διαφάνειες και στις διαλέξεις
    • » Δεν απαντώνται email που δεν έχουν θέμα, που δεν αναφέρουν τα πλήρη στοιχεία του φοιτητή ή που είναι γραμμένα σε greeklish.

Εργαστηρια / Labs

  • Ιστοσελίδα εργαστηρίων: https://www.cse.uoi.gr/~myy502.
  • Υπεύθυνοι Εργαστηρίου:
    Δρ. Βίκυ Σταμάτη
    » Ώρες γραφείου: Πέμπτη 17.30-18.30 και Παρασκευή, 11:00-12:00
    Δρ. Ιωάννης Χάντας
    » Ώρες γραφείου: Παρασκευή, 15:00-17:00
  • Βοηθοί Εργαστηρίου:
    » Αλέξανδρος Καραμπάσης, Ώρες γραφείου: Τετάρτη, 15:00-17:00
    » Μιχάλης Παπατσίμπας, Ώρες γραφείου: Πέμπτη, 19:00-21:00
    » Αναστάσιος Αθανασίου, Ώρες γραφείου: Πέμπτη, 12:00-14:00
  • Οδηγίες για πρόσβαση σε περιβάλλον Linux (PDF)
  • Τεχνική βοήθεια για τους λογαριασμούς σας και τα συστήματα του τμήματος, αναφορά προβλημάτων κλπ.
    » Ομάδα Support

Διαφανειες διαλεξεων

Οι διαφάνειες αναρτώνται μετά την ολοκλήρωση των αντίστοιχων διαλέξεων.