Λειτουργικά Συστήματα

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Λειτουργικά Συστήματα"

Transcript

1 Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ N:10 Δρ. Μηνάς Δασυγένης Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών arch.icte.uwm.gr/mdasyg

2 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Cmmns. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ψηφιακά Μαθήματα του Πανεπιστημίου Δυτικής Μακεδονίας» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 2

3 Περιεχόμενα 1. Σκοπός της άσκησης Παραδοτέα Επικοινωνία διεργασιών με ουρές μηνυμάτων Επικοινωνία διεργασιών με κοινή μνήμη Διαδιεργασιακή Επικοινωνία με απεικόνιση αρχείου στη μνήμη ΠΡΟΣΟΜΟΙΩΣΗ ΔΙΕΡΓΑΣΙΩΝ (SOSSIM) Ασκήσεις Καταστάσεις στο Παράθυρο Prcessr Manager

4 1. Σκοπός της άσκησης Επικοινωνία διεργασιών με ουρές μηνυμάτων (msgget(), msgsnd(), msgrcv(), msgctl()). Επικοινωνία διεργασιών με κοινή μνήμη (shmget(), shmget(), shmat(), shmdt(), shmctl()) Επικοινωνία διεργασιών με απεικόνιση αρχείου στη μνήμη (pen(), mmap(), munma()). Ο προσομοιωτής διεργασιών SOSSIM. 2. Παραδοτέα (A + S) 17+3 ερωτήσεις (C) 4 ασκήσεις 3. Επικοινωνία διεργασιών με ουρές μηνυμάτων Τα σύγχρονα λειτουργικά συστήματα παρέχουν ποικίλες τεχνικές για τη διαδιεργασιακή επικοινωνία. Μια από αυτές είναι η επικοινωνία με ουρές μηνυμάτων. Συγκεκριμένα, μια διεργασία δημιουργεί ή συνδέεται σε ένα γραμματοκιβώτιο (συνάρτηση msgget()), και στη συνέχεια στέλνει (συνάρτηση msgsnd()) και λαμβάνει (συνάρτηση msgrcv()) μηνύματα από αυτό. H συνάρτηση δημιουργίας ή πρόσβασης γραμματοκιβωτίου msgget() πόσα ορίσματα λαμβάνει και τι επιστρέφει; Τι επιστρέφει σε περίπτωση αποτυχίας; (Α1) Αναφέρετε τουλάχιστον 2 καταστάσεις που η κλήση στη συνάρτηση msgget() θα αποτύχει: (Α2) H συνάρτηση αποστολής μηνυμάτων msgsnd() πόσα ορίσματα λαμβάνει και τι επιστρέφει; Τι επιστρέφει σε περίπτωση αποτυχίας; (Α3) Αναφέρετε τουλάχιστον 2 καταστάσεις που η κλήση στη συνάρτηση msgsnd() θα αποτύχει: (Α4) H συνάρτηση λήψης μηνυμάτων msgrcv() πόσα ορίσματα λαμβάνει και τι επιστρέφει; Τι επιστρέφει σε περίπτωση αποτυχίας; (Α5) Αναφέρετε τουλάχιστον 2 καταστάσεις που η κλήση στη συνάρτηση msgrcv() θα αποτύχει: (Α6) 4

5 Πριν την κλήση αποστολής μηνύματος, πρέπει να οριστεί ένα struct στο οποίο ορίζονται δυο στοιχεία: (α) ο τύπος του μηνύματος που ακολουθεί ως lng, και (β) το κυρίως σώμα του μηνύματος ως char. Για παράδειγμα πρέπει να ορίσετε ένα: struct message { lng mtype; char mtext[msgsize]; }; Αρχικά θα πρέπει να αποκτήσετε πρόσβαση σε ένα γραμματοκιβώτιο με τη συνάρτηση msgget(). Με τη συνάρτηση αυτή επιστρέφεται ο προσδιοριστής (resurce) του γραμματοκιβωτίου τον οποίο θα χρησιμοποιήσουμε για να διαβάσουμε ή να γράψουμε μηνύματα. Η πρώτη παράμετρος είναι ένας ακέραιος αριθμός (τύπου key_t) που χρησιμοποιείται για το γραμματοκιβώτιο (τον επιλέγουμε εμείς). Η δεύτερη παράμετρος είναι ένας ακέραιος αριθμός, όπου τοποθετούνται με συμβολικό τρόπο τα δικαιώματα πρόσβασης και επιπρόσθετες επιλογές όπως IPC_CREAT ο οποίος δημιουργεί ένα γραμματοκιβώτιο με το συγκεκριμένο κλειδί ή αν υπάρχει συνδέεται σε αυτό. Συνήθως, δημιουργείται το γραμματοκιβώτιο με τα δικαιώματα Η αποστολή μηνύματος γίνεται με τη msgsnd() η οποία στέλνει ένα μήνυμα στο γραμματοκιβώτιο που ορίζεται στην πρώτη παράμετρο, του οποίου η διεύθυνση δίνεται ως η δεύτερη παράμετρος και έχει μήκος όσο η τρίτη παράμετρος. Η παράμετρος flag είναι 0 τις περισσότερες φορές. Η λήψη μηνύματος γίνεται με τη msgrcv() με παρόμοιο τρόπο. Ο χειρισμός του γραμματοκιβωτίου (ή της ουράς μηνυμάτων) γίνεται με τη συνάρτηση msgctl() όπου η πιο διαδεδομένη ενέργεια είναι η IPC_RMID, η οποία καταστρέφει τη συγκεκριμένη ουρά. (C1) Να γραφεί το πρόγραμμα c1-server.c και ακολούθως το c1-client.c τα οποία ως διεργασία θα στέλνουν και θα λαμβάνουν μηνύματα μέσω των ουρών του λειτουργικού συστήματος. Συγκεκριμένα ο server: Θα ορίζεται το κατάλληλο struct για τις ουρές μηνυμάτων. Θα ορίζεται η recv_buffer τύπου struct. Θα κάνει κλήση της msgget() για να δημιουργεί ένα γραμματοκιβώτιο. Να προσθέσετε την παράμετρο IPC_NOWAIT ώστε να μη γίνεται blck η συνάρτηση λήψης μηνύματος αν δεν υπάρχει μήνυμα και την παράμετρο IPC_CREAT για να δημιουργηθεί το γραμματοκιβώτιο. Επίσης τα δικαιώματα να είναι 0666 (δηλαδή 0666 IPC_CREAT...). Επιλέξτε ως κλειδί των αριθμό μητρώου σας. Θα ελέγχεται αν έχει δημιουργηθεί το γραμματοκιβώτιο και θα εκτυπώνεται το κατάλληλο μήνυμα (mailbx created / mailbx nt created perrr()) και θα εκτυπώνεται ο αριθμός identifier που έχει επιστραφεί. 5

6 Θα μπαίνει σε ένα βρόγχο 3 επαναλήψεων που θα εκτελεί: το sleep(1) τη συνάρτηση λήψης μηνύματος msgrcv() και θα ελέγχει αν έχει τοποθετηθεί κάποιο μήνυμα στην ουρά. Αν δεν υπάρχει κάποιο μήνυμα (δηλαδή έχει επιστραφεί -1) τότε θα εμφανίζει το μήνυμα N message,sleeping!, διαφορετικά New Message: %s και θα εκτυπώνει το μήνυμα που λήφθηκε. Στη συνάρτηση λήψης μηνύματος μπορείτε να χρησιμοποιήσετε στο μέγεθος μηνύματος το 255, δεδομένου ότι δεν πρόκειται να στέλνετε μεγαλύτερα μηνύματα από αυτό. Μετά τις 3 επαναλήψεις θα καταστρέφεται το γραμματοκιβώτιο με την εντολή: msgctl(identifier, IPC_RMID, (struct msqid_ds *) 0) Ο client : Θα ορίζεται το κατάλληλο struct για τις ουρές μηνυμάτων. Θα ορίζεται η send_buffer τύπου struct. Θα συνδέεται στο γραμματοκιβώτιο με τη msgget. Στη δεύτερη παράμετρο θα έχετε το νούμερο Θα τοποθετείται στο send_buffer.mtype μια τιμή lng που θα δείχνει τον τύπο του μηνύματος. Θα ζητάει από το χρήστη να πληκτρολογήσει μια πρόταση. Θα τοποθετείται στο send_buffer.mtext η παραπάνω πρόταση. Με τη strlen() θα καταµετράται ο αριθμός bytes του struct σας και θα αναγράφεται στην οθόνη I will send XXX number f Bytes. Θα καλείται η msgsnd() η οποία θα στέλνει το send_buffer Θα ελέγχεται η τιμή επιστροφής της msgsnd() για να διαπιστωθεί αν στάλθηκε με επιτυχία (οπότε θα αναγράφει message sent succesfully) ή όχι (όταν σταματήσει ο server θα αποτυγχάνει η συνάρτηση). Η διαδικασία αυτή θα επαναλαμβάνεται 3 φορές. 4. Επικοινωνία διεργασιών με κοινή μνήμη Ένας διαδεδομένος για τη διαδιεργασιακή επικοινωνία είναι και η κοινή μνήμη. Με παρόμοιο τρόπο όπως και στις ουρές μηνυμάτων, καλείται αρχικά η συνάρτηση shmget(), η οποία επιστρέφει ένα resurce για τη κοινή μνήμη για το συγκεκριμένο κλειδί (key_t) η οποία είτε δημιουργείται κατά την κλήση είτε υπάρχει από πριν, δηλαδή έχει δημιουργηθεί από προηγούμενη διεργασία. Οι διεργασίες λοιπόν τοποθετούν δεδομένα στην κοινή περιοχή μνήμης και επικοινωνούν μεταξύ τους. Υπάρχει όμως το πρόβλημα ότι αν οι διεργασίες γράψουν ταυτόχρονα στην ίδια 6

7 περιοχή μνήμης τότε θα χαθεί μια εγγραφή. Για να το αντιμετωπίσουμε αυτό θα πρέπει να χρησιμοποιήσουμε κάποια τεχνική αμοιβαίου αποκλεισμού όμως είδαμε στη θεωρία. H συνάρτηση δημιουργίας ή πρόσβασης κοινής μνήμης shmget()πόσα ορίσματα λαμβάνει και τι επιστρέφει; Τι επιστρέφει σε περίπτωση αποτυχίας; (Α7) Αναφέρετε τουλάχιστον 2 καταστάσεις που η κλήση στη συνάρτηση shmget() θα αποτύχει: (Α8) Αφού καλέσουμε τη shmget()το επόμενο βήμα είναι να προσαρτήσουμε τη συγκεκριμένη περιοχή μνήμης στη διεργασία μας. Αυτό επιτυγχάνεται με την κλήση της συνάρτησης shmat(). H συνάρτηση προσάρτησης κοινής μνήμης shmat() πόσα ορίσματα λαμβάνει και τι επιστρέφει; Τι επιστρέφει σε περίπτωση αποτυχίας; (Α9) Αναφέρετε τουλάχιστον 2 καταστάσεις που η κλήση στη συνάρτηση shmat() θα αποτύχει: (Α10) Μόλις χρησιμοποιήσουμε τη shmat() τότε αυτή μας επιστρέφει ένα char *, pinter που δείχνει στην αρχική διεύθυνση του τμήματος. Προκειμένου να μη χάσουμε την αρχική αυτή διεύθυνση, συνήθως αντιγράφουμε αυτή τη διεύθυνση σε ένα άλλο char * pinter τον οποίο θα το χρησιμοποιήσουμε παρακάτω. Δηλαδή, έχουμε ορίσει στην αρχή του προγράμματος: char *shared,*sharedcpy και αφού καλέσουμε τη shared=shmat(..) και τοποθετηθεί η διεύθυνση που ξεκινάει το shared κομμάτι στ *shared, κάνουμε sharedcpy=shared; για να αρχίσουμε να τροποποιούμε το sharedcpy. Αν θέλουμε να γράψουμε ή να διαβάσουμε κάτι τότε μπορούμε να χρησιμοποιήσουμε δυο τρόπους: είτε με pinter γράφοντας τον χαρακτήρα που θέλουμε άμεσα, ως *sharedcpy= m και για την επόμενη θέση *sharedcpy++ κ.ο.κ. είτε ως μονοδιάστατο πίνακα γράφοντας τον χαρακτήρα στη θέση sharedcpy[i]= m Σε κάθε περίπτωση στο τέλος πρέπει να τοποθετήσουμε το NULL (δηλαδή το 0) γιατί τα strings στη C απαιτούν το \0 για τερματισμό. 7

8 Αφού χρησιμοποιήσουμε την κοινή μνήμη, το επόμενο βήμα είναι να αποσπάσουμε τη μνήμη από τη διεργασία. Αυτό επιτυγχάνεται με την κλήση της shmdt(). H συνάρτηση από-προσάρτησης κοινής μνήμης shmdt() πόσα ορίσματα λαμβάνει και τι επιστρέφει; Τι επιστρέφει σε περίπτωση αποτυχίας; (Α11) Αναφέρετε τουλάχιστον 2 καταστάσεις που η κλήση στη συνάρτηση shmdt() θα αποτύχει: (Α12) Τέλος, αφού απο-προσαρτήσουμε την κοινή μνήμη απελευθερώνουμε τη μνήμη προς το λειτουργικό σύστημα με τη συνάρτηση shmctl(). Με παρόμοιο τρόπο με την επικοινωνία με τις ουρές μπορούμε με τη συνάρτηση αυτή να εκτελέσουμε την ενέργεια IPC_RMID για να καταστρέψουμε τον πόρο. Σε αυτή την περίπτωση η τελευταία παράμετρος πρέπει να είναι η (struct shmid_ds *) 0. (C2) Να γραφεί το πρόγραμμα c2-server.c και ακολούθως το c2-client.c τα οποία ως διεργασία θα χρησιμοποιούν μια κοινή μνήμη για τη διαδιεργασιακή τους επικοινωνία. Συγκεκριμένα ο server: Θα ορίζεται ένα κλειδί με τον ΑΜ σας. Θα δημιουργείται μια κοινή περιοχή μνήμης με τη shmget() με παράμετρο IPC_CREAT 0666, και μέγεθος τουλάχιστον 50 Bytes. Θα εμφανίζεται κατάλληλο μήνυμα επιτυχίας ή αποτυχίας. Θα προσαρτάται η κοινή μνήμη στη διεργασία μας. Θα γράφει ο server μια αριθμητική τιμή στη διεύθυνση 0 της κοινής μνήμης και το ονοματεπώνυμό σας. Θα διαβάζει συνεχώς τη διεύθυνση 0 σε ένα βρόχο while με μια εντολή sleep(1) μέχρι να τροποποιηθεί η τιμή στη διεύθυνση 0. Όταν τροποποιηθεί θα εκτυπώνει το μήνυμα που έχει τοποθετηθεί στην κοινή μνήμη. Θα απο-προσαρτά την κοινή μνήμη (εμφανίζοντας κατάλληλο μήνυμα). Θα καταστρέφει την κοινή μνήμη (εμφανίζοντας κατάλληλο μήνυμα). O client: Θα ορίζεται ένα κλειδί με τον ΑΜ σας. Θα συνδέεται στην κοινή περιοχή μνήμης με τη shmget()και θα εμφανίζει κατάλληλο μήνυμα Θα προσαρτά την κοινή μνήμη στη διεργασία με τη shmat() και θα εμφανίζει κατάλληλο μήνυμα. Προσοχή στις παραμέτρους της συνάρτησης. Η πρώτη παράμετρος είναι αυτή που επιστρέφει η shmget(). Θα ζητάει από το χρήστη να πληκτρολογήσει μια πρόταση. 8

9 Θα τοποθετείται η πρόταση αυτή από τη διεύθυνση μνήμης +1 (για να μην τροποποιηθεί η διεύθυνση 0). Μόλις γραφεί θα τροποποιείται το περιεχόμενο της διεύθυνσης 0 με το να διαβαστεί και να αυξηθεί κατά 1 (δηλαδή να τροποποιηθεί το περιεχόμενο της μνήμης που δείχνει η διεύθυνση 0). 5. Διαδιεργασιακή Επικοινωνία με απεικόνιση αρχείου στη μνήμη Memry Mapped File Ένας ακόμη δημοφιλής τρόπος διαδιεργασιακής επικοινωνίας είναι η απεικόνιση αρχείου ή γενικότερα μιας οποιασδήποτε περιοχής που μπορεί να επιτρέπει πρόσβαση επιπέδου μπλοκ στη μνήμη, όπως ένας δίσκος ή μια τμηματοποίηση (partitin). Για να λειτουργήσει αυτή η τεχνική, απαιτείται πρώτα να ανοιχτεί η συσκευή ή το αρχείο με pen() και στη συνέχεια να γίνει κλήση της mmap() με τις κατάλληλες παραμέτρους. H συνάρτηση απεικόνισης αρχείου στη μνήμη mmap() πόσα ορίσματα λαμβάνει και τι επιστρέφει; Τι επιστρέφει σε περίπτωση αποτυχίας; (Α13) Αναφέρετε τουλάχιστον 2 καταστάσεις που η κλήση στη συνάρτηση mmap() θα αποτύχει: (Α14) H συνάρτηση ανοίγματος αρχείου pen() πόσα ορίσματα λαμβάνει και τι επιστρέφει; Τι επιστρέφει σε περίπτωση αποτυχίας; (Α15) Αναφέρετε τουλάχιστον 2 καταστάσεις που η κλήση στη συνάρτηση pen() θα αποτύχει: (Α16) Με την εντολή dd δημιουργήστε στο /tmp ένα αρχείο με όνομα το ΑΜ σας με μέγεθος 30 bytes και αρχικές τιμές 0. Για να γίνει αυτό θα χρησιμοποιήσουμε την παράμετρο if=/dev/zer (δηλαδή, είσοδος από τη συσκευή που δίνει 0) και έξοδο f=/tmp/aem. Βρείτε τις υπόλοιπες παραμέτρους από τη σελίδα βοήθειας. Ποια είναι η πλήρης εντολή που χρησιμοποιήσατε: (Α17) Επιβεβαιώστε με ls -l ότι αναγράφεται το σωστό μέγεθος. (C3) Να γραφεί το πρόγραμμα c3.c το οποίο ως διεργασία θα χρησιμοποιεί την απεικόνιση μνήμης. Συγκεκριμένα: Θα χρησιμοποιεί την κλήση συστήματος pen() για να ανοίξει το αρχείο/tmp/ AEM με παράμετρο εγγραφής/ανάγνωσης O_RDWR και 9

10 (mde_t)0600 προκειμένου να υπάρχουν τα δικαιώματα εγγραφής και ανάγνωσης από διεργασίες του ίδιου ιδιοκτήτη (μόνο). Θα γίνεται έλεγχος αν έχει ανοιχτεί το αρχείο, διαφορετικά θα εκτυπώνει κατάλληλο μήνυμα και θα σταματάει η εκτέλεση. Η κλήση του συστήματος mmap() που ακολουθεί επιστρέφει ένα δείκτη σε πίνακα vid μεταβλητής. Εμείς θα χρησιμοποιήσουμε χαρακτήρες σε αυτό το αρχείο, οπότε θέλουμε ο δείκτης να είναι δείκτης χαρακτήρων. Να τοποθετήσετε τη δήλωση για το δείκτη mapfile στις μεταβλητές. Στη συνέχεια θα καλείται η mmap() η οποία θα κάνει την αντιστοίχηση ξεκινώντας από τη διεύθυνση 0 (πρώτη παράμετρος), όλο το μέγεθος του αρχείου (δεύτερη παράμετρος), με την τρίτη παράμετρο να δείχνει ότι θα διαβάζονται και θα γράφονται οι σελίδες, με την τέταρτη παράμετρο να δείχνει ότι θα είναι SHARED οι σελίδες αυτές, με την πέμπτη παράμετρο να χρησιμοποιηθεί ο περιγραφέας αρχείου από την pen() και την τελευταία παράμετρο που δείχνει την μετατόπιση να είναι 0. Θα γίνεται έλεγχος στη συνέχεια αν έχει επιτευχθεί η αντιστοίχηση, διαφορετικά θα εκτυπώνει κατάλληλο μήνυμα και θα σταματάει η εκτέλεση. Θα δημιουργείται ένας βρόχος από i=1 έως το μέγεθος του αρχείου: θα εκτυπώνεται ο δείκτης i θα εκτυπώνεται η τρέχουσα τιμή mapfile[i] θα γράφεται η τιμή md((mapfile[i] + i),94)+32 στη θέση mapfile[i] {αυτή η έκφραση μας επιστρέφει μια τιμή που ανήκει από 32 έως 128, δηλαδή μια τιμή ενός εκτυπώσιμου ASCII χαρακτήρα}. Προσέξτε ότι αποκτούμε πρόσβαση στο αρχείο ως πίνακα και μπορούμε απλά να γράφουμε ή να διαβάζουμε με την πρόσβαση στον αντίστοιχο δείκτη. Θα εκτυπώνεται η νέα τιμή mapfile[i] δηλαδή: Στη θέση i=xx διάβασα τιμή mapfile[i] (παλαιά τιμή) και θα την τροποποιήσω σε mapfile[i] (νέα τιμή) Μόλις ολοκληρωθεί η διαδικασία θα καλέσετε την munmap() για να απομακρύνετε την απεικόνιση. Θα γίνεται έλεγχος και θα εκτυπώνεται κατάλληλο μήνυμα. Στο τέλος θα κλείνει ο περιγραφέας αρχείου. Εκτελέστε το αρχείο και ανοίξτε το αρχείο /tmp/ AEM θα διαπιστώσετε ότι έχει γραφεί το αρχείο με χαρακτήρες ASCII. Τροποποιήστε κάποιους χαρακτήρες και εκτελέστε πάλι το πρόγραμμα, και θα διαπιστώσετε ότι το πρόγραμμά σας εκτυπώνει τις σωστές τιμές. 10

11 Το μεγάλο πλεονέκτημα αυτής της μεθόδου είναι ότι δε χρειάζεται να διαβάσουμε όλο το αρχείο στη μνήμη. Τροποποιείται μόνο το τμήμα του αρχείου (ή οι σελίδες του αρχείου) που χρειαζόμαστε. Έτσι μπορούμε π.χ. να κάνουμε αντιστοίχηση με ένα αρχείο αρκετά μεγάλο (κάποια GB) σε μηχάνημα που έχουμε πολύ λίγη μνήμη. (C4) Να γραφούν τα προγράμματα c4-server.c και c4-client.c τα οποία ως διεργασία επικοινωνούν με ένα κοινό αρχείο που θα έχει στοιχεία int. Συγκεκριμένα και τα δύο αρχεία θα συνδέονται με read-write σε ένα αρχείο δική σας επιλογής μεγέθους 4*500 (κάθε ακέραιος έχει 4Bytes και θέλουμε 500 θέσεις). Το c4-server.c θα διαβάζει κάθε 1 sec (χρήση της sleep) την τιμή του αρχείου στη θέση 0 (mapfile[0]). Μόλις διαβάσει μια τιμή διαφορετική από το 0, τότε θα πηγαίνει στην αντίστοιχη θέση mapfile θα διαβάζει την τιμή που υπάρχει, θα την εκτυπώνει, θα την αυξάνει κατά 5 και θα τη γράφει πάλι. Στη συνέχεια θα μηδενίζει την τιμή στη θέση 0. Η διαδικασία επαναλαμβάνεται έως να διαβάσει την τιμή 555 οπότε θα σταματάει. Το c4-client.c θα ζητάει από το χρήση να πληκτρολογήσει μια διεύθυνση. Αφού γίνει έλεγχος έγκυρης τιμής, η διεργασία θα διαβάζει τη συγκεκριμένη τιμή στη διεύθυνση που έχει δοθεί, θα την εμφανίζει και θα ζητάει από το χρήστη να πληκτρολογήσει τη νέα τιμή. Ο χρήστης θα πληκτρολογεί μια νέα τιμή και αυτή θα τοποθετείται στη διεύθυνση. Ταυτόχρονα ο αριθμός της διεύθυνσης αυτής θα τοποθετηθεί στη θέση 0 (για να το διαβάσει ο server). Η διαδικασία επαναλαμβάνεται έως να διαβάσει την τιμή 555 οπότε τη γράφει στη θέση 0 και σταματάει. Να υπάρχουν οι κατάλληλοι έλεγχοι. Ένα πρόβλημα που υπάρχει είναι ότι η πρόσβαση στα κοινά δεδομένα γίνεται χωρίς αμοιβαίο αποκλεισμό. Για να επιτευχθεί ο αμοιβαίος αποκλεισμός θα πρέπει να χρησιμοποιηθούν mutex ή semaphres, κάτι που θα δούμε στο τελευταίο εργαστήριο. 6. ΠΡΟΣΟΜΟΙΩΣΗ ΔΙΕΡΓΑΣΙΩΝ (SOSSIM) 6.1 Ασκήσεις Έναρξη -- τερματισμός διεργασιών στον προσομοιωτή διεργασιών λειτουργικού Συστήματος Ssim. Ο προσομοιωτής SOsim υλοποιεί τις διεργασίες ως Prcess Cntrl Blcks (PCBs), όπου διατηρούνται οι πληροφορίες της κάθε διεργασίας. Ο χρονοπρογραμματισμός είναι η διαδικασία της απόφασης επιλογής της διεργασίας που θα «κερδίσει» τη CPU. Υλοποιείται με: Προεκτοπιστικούς αλγορίθμους (preemptive algrithms). Καθορισμός προτεραιοτήτων. 11

12 Χρόνος άφιξης (δημιουργίας) διεργασίας. Μη-προεκτοπιστικούς αλγορίθμους (nn-preemptive algrithms). Ο προσομοιωτής SOSIM έχει 6 παράθυρα: Παράθυρο SOsim Cnsle, Παράθυρο Prcessr Manager, Παράθυρο Lg, Παράθυρο Statistics Παράθυρο Select a Prcess, Παράθυρο Memry Manager. Η λειτουργία του παραθύρου SOSim Cnsle: Δημιουργία νέας διεργασίας (Prcess / Create). Ορισμός κατηγορίας διεργασίας (CPU-bund, I/O bund κ.τ.λ) I/O-1, I/O-2, I/O-3 : αν έχουμε ορίσει χρονοπρογραμματισμό με δυναμική προτεραιότητα (dynamic pririty scheduling), τα -1, -2, -3 δηλώνουν την αύξηση της προτεραιότητας της διεργασίας κατά +1, +2, +3 ΜΙΧ-1: ΜΙΧ-2: η διεργασία καταναλώνει το χρόνο της τόσο σε Ι/Ο όσο και στη CPU ακολουθία καταστάσεων διεργασίας: ready->running->ready by time->i/o pririty bst +1 (όταν έχει οριστεί χρονοπρογραμματισμός με δυναμική προτεραιότητα). ακολουθία καταστάσεων διεργασίας: ready->running->ready by time->i/o, pririty bst +2 Ορισμός προτεραιότητας διεργασίας. Πλήκτρο Run/Stp: παγώνει τις οθόνες των παραθύρων, ώστε να παρατηρήσουμε κάποιες παραμέτρους. Επαναφέρουμε την κίνηση με το Run Εμφάνιση παραθύρου μηνυμάτων (Windws/Lg) Εμφάνιση παραθύρου στατιστικών (Windws/Statistics) Πηγαίνετε στο παράθυρο SOSIM Prcessr Manager. Καθορίστε χρονοπρογραμματισμό εκ περιτροπής χωρίς προτεραιότητες (rund-rbin scheduling) (από Optins). Δημιουργήστε δύο διεργασίες προτεραιότητας 0: μια CPU-bund και μια I/O-1 (από το SOSIM Cnsle, Prcess/create) Εμφανίστε το παράθυρο Lg, αν δεν είναι ορατό. (από SOSIM CONSOLE Windws Lg) Παρατηρήστε πως εναλλάσσονται οι διεργασίες (πολυπρογραμματισμός) Προσθέστε μια διεργασία I/O-2. 12

13 Παρατηρήστε το παράθυρο Lg. Υπάρχει κάποια διαφορά στην εκτέλεση των διεργασιών; (S1) 6.2 Καταστάσεις στο Παράθυρο Prcessr Manager Ready: δείχνει τις ουρές προτεραιοτήτων των διεργασιών. Waiting: δείχνει ποιες διεργασίες περιμένουν για Ι/Ο. Ι/Ο wait time: δείχνει πόσο χρόνο θα περιμένει μια διεργασία I/O-bund μέχρι να εξυπηρετηθεί. Όταν διαλέγουμε μικρό I/O wait time, τότε διακόπτεται πιο γρήγορα ο χρόνος της CPU για να εκτελεστεί Ι/Ο. time slice: το χρονικό διάστημα (κβάντο χρόνου) κατά το οποίο μια διεργασία χρησιμοποιεί τη CPU. clck: αν αυξηθεί αυτή η παράμετρος τότε παρουσιάζονται πιο γρήγορα οι εναλλαγές των διεργασιών στο παράθυρο lg. Pririty preemptive scheduling: Αν είναι τσεκαρισμένο θα πραγματοποιείται χρονοπρογραμματισμός εκ περιτροπής με προτεραιότητες. Αν δεν είναι τσεκαρισμένο θα πραγματοποιείται χρονοπρογραμματισμός εκ περιτροπής χωρίς προτεραιότητες. Dynamic pririty scheduling: Αν είναι τσεκαρισμένο θα ισχύουν δυναμικές προτεραιότητες (π.χ. Μια διεργασία τύπου Ι/Ο-1 θα αυξάνει κατά 1 την προτεραιότητά της, Ι/Ο-2 κατά 2 κ.ο.κ). Παράθυρο Statistics #prcesses : αριθμός διεργασιών. ready : πόσες διεργασίες είναι έτοιμες. running: πόσες διεργασίες τρέχουν. wait: πόσες διεργασίες περιμένουν να εξυπηρετηθούν. Το άθροισμα των blcks που χρησιμοποιούν μπορεί να είναι μέχρι =20 πριν αρχίσει η εναλλαγή blcks (4 διεργ. x 5 blcks = 20 memry allcatin blcks = 20% του συνολικού χώρου μνήμης). Μετά αρχίζει εναλλαγή (swapping). Δηλαδή μέχρι 4 διεργασίες (των 5 blcks) μπορούν να βρίσκονται στη μνήμη κάθε χρονική στιγμή. Hw Page faults: όταν μια διεργασία δημιουργείται ο αριθμός αυξάνεται κατά τον αρ.των blcks της διεργασίας. Κάθε φορά που μια διεργασία αφαιρείται από τη μνήμη για να μπει μια άλλη στη θέση της ο αριθμός αυτός αυξάνεται κατά τον αρ.των blcks της νεοεισερχόμενης διεργασίας (αρ. blcks που ζητήθηκαν). 13

14 Παράδειγμα 1 χρονοδρομολόγησης στο SOSIM 1. Να δημιουργήσετε στον Προσομοιωτή SOSIM τρεις διεργασίες CPU-bund, ίδιας προτεραιότητας (0). a. Παρακολουθήστε το παράθυρο Free Page List (FPL): 2. Το Free Page List (FPL) μικραίνει με κάθε διεργασία που προσθέτουμε 3. Παρακολουθήστε το παράθυρο lg: a. Οι διεργασίες μοιράζονται τη CPU για ίσο χρόνο. 4. Προσθέστε μια 4η διεργασία CPU-bund, προτεραιότητας 1. a. Παρακολουθήστε το παράθυρο lg: b. Τρέχει μόνο η 4η διεργασία CPU. 5. Από το παράθυρο Prcess/Select/ επιλέξτε Suspend για την 4η διεργασία. 6. Τρέχουν μόνο οι 3 διεργασίες. 7. Αλλάξτε Pririty για την 4η διεργασία από 1 σε 0 8. Επιλέξτε Resume για την 4η διεργασία 9. Παρακολουθήστε το παράθυρο lg: a. Όλες οι διεργασίες μοιράζονται τώρα τη CPU για ίσο χρόνο. Αν στο προηγούμενο παράδειγμα δημιουργηθεί πρώτα η CPU-bund διεργασία με προτεραιότητα 1 και μετά οι 3 CPU-bund διεργασίες με προτεραιότητα 0 τί θα συμβεί; (S2) (S3) Προσομοιώστε τη λειτουργία χρονοπρογραμματισμού rund - rbin με προτεραιότητες και dynamic pririty scheduling με 4 διεργασίες: Μία I/O bund με προτεραιότητα 4. Δύο I/O bund με προτεραιότητα 3. Δύο CPU bund με προτεραιότητα 5. Ορίστε το time-slice = 2. Ορίστε το I/O wait time = 8. Παρατηρήστε για δύο (2) λεπτά το χρόνο εκτέλεσης των διεργασιών. Εξυπηρετούνται όλες οι I/O-bund διεργασίες; Αν η CPU-bund διεργασία γίνει suspended και μετά resumed, τι συμβαίνει με την εκτέλεση των διεργασιών; Παραδώστε το αρχείο lg στο οποίο να έχετε συμπληρώσει: Στην αρχή του αρχείου το ονοματεπώνυμό σας και τα PID των διεργασιών σας. Στο τέλος του αρχείου να απαντήσετε τα υποερωτήματα 5 και 6. 14

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:03 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 03 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:04 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:08 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 04 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Εργαστήριο

Αρχιτεκτονική Υπολογιστών Εργαστήριο Αρχιτεκτονική Υπολογιστών Εργαστήριο Ενότητα: ΠΑΡΑΔΕΙΓΜΑ ΑΠΟΣΦΑΛΜΑΤΩΣΗΣ Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No 05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:06 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:09 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:11 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 07 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 4(β): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Β ) Λειτουργικό Σύστημα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 02 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 2: Δομή ενός προγράμματος C Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 06 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 13 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Συναρτήσεις θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 5(γ): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Προγραμματισμός συστημάτων UNIX/POSIX

Προγραμματισμός συστημάτων UNIX/POSIX Προγραμματισμός συστημάτων UNIX/POSIX Προχωρημένη διαδιεργασιακή επικοινωνία: επώνυμοι αγωγοί (FIFOs) ουρές μηνυμάτων (message queues) κοινόχρηστη μνήμη (shared memory) Ανάγκη Ότι είδαμε μέχρι τώρα μπορεί

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 3(γ): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:00 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Β ) Λειτουργικό Σύστημα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 4: MPI_ANY_TAG,MPI_ANY_SOURCE,MPI_Bcast, MPI_Wtime, MPI_Wait, MPI_Test, MPI_Scatter Δρ. Μηνάς Δασυγένης

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:09 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 6(γ): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 5 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 3: Καταχωρητές, Τμήματα, Διευθυνσιοδότηση Μνήμης, SEGMENT, MOV, ADD, SUB, INT, TITLE, LEA

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 5(α): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:10 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΝΔΕΙΚΤΙΚΕΣ ΕΡΩΤΗΣΕΙΣ ΕΡΓΑΣΤΗΡΙΟΥ No11 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Ψηφιακή Σχεδίαση Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http:

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 6: inc, dec, loop, jcxz, dup, displacement Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο

Διαβάστε περισσότερα

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Λειτουργικά

Διαβάστε περισσότερα

Κεφάλαιο 3. Διδακτικοί Στόχοι

Κεφάλαιο 3. Διδακτικοί Στόχοι Κεφάλαιο 3 Σε ένα υπολογιστικό σύστημα η Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) εκτελεί τις εντολές που βρίσκονται στην κύρια μνήμη του. Οι εντολές αυτές ανήκουν σε προγράμματα τα οποία, όταν εκτελούνται,

Διαβάστε περισσότερα

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Ψηφιακή Σχεδίαση Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http:

Διαβάστε περισσότερα

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 3: MPI_Get_count, non blocking send/recv, εμφάνιση και αποφυγή αδιεξόδων Δρ. Μηνάς Δασυγένης mdasyg@ieee.org

Διαβάστε περισσότερα

Μάθημα 7 ο. Αλγόριθμοι Χρονοδρομολόγησης

Μάθημα 7 ο. Αλγόριθμοι Χρονοδρομολόγησης Μάθημα 7 ο Αλγόριθμοι Χρονοδρομολόγησης Σκοπός του μαθήματος Στην ενότητα αυτή θα εξηγήσουμε το ρόλο και την αξιολόγηση των αλγορίθμων χρονοδρομολόγησης, και θα παρουσιάσουμε τους κυριότερους. Θα μάθουμε:

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα

ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα 3.1 Η εξέλιξη των λειτουργικών συστηµάτων 3.2 Αρχιτεκτονική λειτουργικών συστηµάτων 3.3 Συντονισµός των δραστηριοτήτων του υπολογιστή 3.4 Χειρισµός ανταγωνισµού µεταξύ

Διαβάστε περισσότερα

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 7: Πρόγραμμα Συνδεδεμένης Λίστας και Διαδικασιών. Μανόλης Γ.Η.

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 7: Πρόγραμμα Συνδεδεμένης Λίστας και Διαδικασιών. Μανόλης Γ.Η. ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Οργάνωση Υπολογιστών Ασκήσεις 7: Πρόγραμμα Συνδεδεμένης Λίστας και Διαδικασιών Μανόλης Γ.Η. Κατεβαίνης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:03 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ ARDUINO Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 10: Πέρασμα Παραμέτρων σε Διαδικασίες. Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 6: Διαδικασίες, Σωρός, Διαφανείς συναρτήσεις Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Μάθημα: ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης (clam@unipi.gr) Δρ. Α. Γαλάνη (agalani@unipi.gr) 1 Συμβαίνει συχνά πολλές διεργασίες να ανταγωνίζονται για τον έλεγχο

Διαβάστε περισσότερα

Εισαγωγή εκτελέσιμου κώδικα σε διεργασίες

Εισαγωγή εκτελέσιμου κώδικα σε διεργασίες 0x375 - Thessaloniki Tech Talks Sessions Event 0x2 19 Μαρτίου 2010 Περιεχόμενα 1 Εισαγωγή 2 Η κλήση συστήματος ptrace 3 Νήματα 4 Το πρόγραμμα εισαγωγής κώδικα prez 5 Επίλογος Γιατί; Πολλές φορές θέλουμε

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 5: Εντολές αλλαγής ροής. Διακλάδωση χωρίς συνθήκη. Διακλάδωση με συνθήκη. Δρ. Μηνάς Δασυγένης

Διαβάστε περισσότερα

1 η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Ακ. έτος , 5ο Εξάμηνο, Σχολή ΗΜ&ΜΥ

1 η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Ακ. έτος , 5ο Εξάμηνο, Σχολή ΗΜ&ΜΥ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr 1 η ΑΣΚΗΣΗ ΣΤΗΝ

Διαβάστε περισσότερα

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Λειτουργικά Συστήματα Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Λειτουργικά Συστήματα», 2015-2016 Κεφάλαιο 4: Διεργασίες Πρόγραμμα Πρόγραμμα 1 Πρόγραμμα

Διαβάστε περισσότερα

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο 2009 2010

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο 2009 2010 Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο 2009 2010 Καθηγητής. Γουνόπουλος Άσκηση 1 Σκοπός της εργασίας αυτής είναι η κατανόηση της εσωτερικής λειτουργίας

Διαβάστε περισσότερα

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών Οργάνωση Υπολογιστών Υπολογιστικό Σύστημα Λειτουργικό Σύστημα Αποτελεί τη διασύνδεση μεταξύ του υλικού ενός υπολογιστή και του χρήστη (προγραμμάτων ή ανθρώπων). Είναι ένα πρόγραμμα (ή ένα σύνολο προγραμμάτων)

Διαβάστε περισσότερα

Κατανεμημένα Συστήματα

Κατανεμημένα Συστήματα Κατανεμημένα Συστήματα Σημειώσεις εργαστηρίου Lab#7 - Διεργασίες, Nήματα, Πολυνημάτωση στη Python Νεβράντζας Βάιος-Γερμανός Λάρισα, Φεβρουάριος 2013 Lab#7 - Διεργασιές, Νη ματα, Πολυνημα τωση στη Python,

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 08 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Λειτουργικά

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 10: Συναρτήσεις Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Πληροφορική & Τηλεπικοινωνίες Υλοποίηση Συστημάτων Βάσεων Δεδομένων - Χειμερινό Εξάμηνο Καθηγητής Δ. Γουνόπουλος

Πληροφορική & Τηλεπικοινωνίες Υλοποίηση Συστημάτων Βάσεων Δεδομένων - Χειμερινό Εξάμηνο Καθηγητής Δ. Γουνόπουλος Πληροφορική & Τηλεπικοινωνίες Υλοποίηση Συστημάτων Βάσεων Δεδομένων - Χειμερινό Εξάμηνο 2016 2017 Καθηγητής Δ. Γουνόπουλος Άσκηση 2 - Εξωτερική Ταξινόμηση Παράδοση: 20/01/2017 Σκοπός της εργασίας αυτής

Διαβάστε περισσότερα

Ανάλυση Επιδόσεων Συστημάτων Πραγματικού Χρόνου

Ανάλυση Επιδόσεων Συστημάτων Πραγματικού Χρόνου ΣΥΣΤΗΜΑΤΑ ΠΡΑΓΜΑΤΙΚΟΥ ΧΡΟΝΟΥ Μάθημα Επιλογής Ανάλυση Επιδόσεων Συστημάτων Πραγματικού Χρόνου Δρ. Γεώργιος Κεραμίδας e-mail: gkeramidas@teimes.gr 1 Διεργασίες: Κατάσταση Εκτέλεσης (3-σταδίων) Κατάσταση

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 9 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Λειτουργικά Συστήματα Ενότητα 9 : Ιδεατή Μνήμη 1/2 Δημήτριος Λιαροκάπης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, μνήμης και Ε/Ε)

Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, μνήμης και Ε/Ε) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, και Ε/Ε) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

Τι είναι ένα λειτουργικό σύστημα (ΛΣ); Μια άλλη απεικόνιση. Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή

Τι είναι ένα λειτουργικό σύστημα (ΛΣ); Μια άλλη απεικόνιση. Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, και Ε/Ε) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Λειτουργικά Συστήματα Ενότητα 13 : Δρομολόγηση Διεργασιών 3/3 Δημήτριος Λιαροκάπης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Ψηφιακή Σχεδίαση Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http:

Διαβάστε περισσότερα

Εισαγωγή στον δομημένο προγραμματισμό

Εισαγωγή στον δομημένο προγραμματισμό Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στον δομημένο προγραμματισμό Ενότητα 12 η : Δυναμική Ανάθεση Θέσης Αν. καθηγητής Στεργίου Κώστας e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Χρονοδρομολογητής Κυκλικής Επαναφοράς

Χρονοδρομολογητής Κυκλικής Επαναφοράς Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων 4 η Εργαστηριακή Άσκηση: Χρονοδρομολογητής Κυκλικής Επαναφοράς Λειτουργικά Συστήματα Υπολογιστών

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι κ. ΠΕΤΑΛΙΔΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 10 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 7: Αποκωδικοποίηση Εντολής x86 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής Στο εργαστήριο αυτό θα δούμε πώς ορίζονται και πώς χρησιμοποιούνται οι συμβολοσειρές στην C. Επίσης, θα μελετήσουμε κάποιες από τις συναρτήσεις

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Αλφαριθμητικά θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Εικονική Μνήμη (Virtual Memory) Προγραμματισμός II 1

Εικονική Μνήμη (Virtual Memory) Προγραμματισμός II 1 Εικονική Μνήμη (Virtual Memory) Προγραμματισμός II 1 lalis@inf.uth.gr Μνήμη και επικοινωνία διεργασιών Κάθε διεργασία έχει δική της ιδιωτική μνήμη Μια διεργασία δεν μπορεί να γράψει/διαβάσει από/σε θέσεις

Διαβάστε περισσότερα

Τεχνολογία Πολυμέσων. Ενότητα # 3: Συστήματα πολυμέσων Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Πολυμέσων. Ενότητα # 3: Συστήματα πολυμέσων Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Τεχνολογία Πολυμέσων Ενότητα # 3: Συστήματα πολυμέσων Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του

Διαβάστε περισσότερα

ΜΑΘΗΜΑ: Αντικειμενοστρεφής Προγραμματισμός

ΜΑΘΗΜΑ: Αντικειμενοστρεφής Προγραμματισμός ΜΑΘΗΜΑ: Αντικειμενοστρεφής Προγραμματισμός ΔΙΔΑΣΚΩΝ: ΤΜΗΜΑ: Συνδουκάς Δημήτριος Διοίκησης Επιχειρήσεων (Γρεβενά) 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης CreativeCommons.

Διαβάστε περισσότερα

Λειτουργικά Συστήματα (Λ/Σ)

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Βασικές Έννοιες Λειτουργικών Συστημάτων Βασίλης Σακκάς 13/11/2013 1 ΒασικέςΈννοιεςΛ/Σ Η επικοινωνία μεταξύ Λ/Σ και των προγραμμάτων του χρήστη γίνεται μέσω του συνόλου των «εκτεταμένων

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: Μέτρηση χρόνου τοίχου κατά POSIX Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Εργαστήριο ΔΙΕΡΓΑΣΙΕΣ - ΔΙΑΧΕΙΡΙΣΗ

Εργαστήριο ΔΙΕΡΓΑΣΙΕΣ - ΔΙΑΧΕΙΡΙΣΗ Εργαστήριο ΔΙΕΡΓΑΣΙΕΣ - ΔΙΑΧΕΙΡΙΣΗ Εισαγωγή Σκοπός τόσο αυτού του εργαστηρίου, όσο και των εργαστηρίων που ακολουθούν, είναι να γνωρίσουμε τους τρόπους δημιουργίας και διαχείρισης των διεργασιών (processes)

Διαβάστε περισσότερα

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Λειτουργικά

Διαβάστε περισσότερα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Χρονοπρογραμματισμός Εργαστηριακές Ασκήσεις

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Χρονοπρογραμματισμός Εργαστηριακές Ασκήσεις ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Χρονοπρογραμματισμός Εργαστηριακές Ασκήσεις Υλικό από: Κ Διαμαντάρας, Λειτουργικά Συστήματα, Τμήμα Πληροφορικής ΤΕΙΘ Σύνθεση Κ.Γ. Μαργαρίτης, Τμήμα Εφαρμοσμένης Πληροφορικής, Πανεπιστήμιο

Διαβάστε περισσότερα

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Λειτουργικά Συστήματα Ενότητα 12 : Δρομολόγηση Διεργασιών 2/3 Δημήτριος Λιαροκάπης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Πληροφορική & Τηλεπικοινωνίες. K18 - Υλοποίηση Συστημάτων Βάσεων Δεδομένων Εαρινό Εξάμηνο

Πληροφορική & Τηλεπικοινωνίες. K18 - Υλοποίηση Συστημάτων Βάσεων Δεδομένων Εαρινό Εξάμηνο Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστημάτων Βάσεων Δεδομένων Εαρινό Εξάμηνο 2010 2011 Δ. Γουνόπουλος Ι. Ιωαννίδης Άσκηση 1: Συγχώνευση Εγγραφών Δυαδικών Αρχείων Προθεσμία: 2 Μαΐου 2011, 5:00μμ

Διαβάστε περισσότερα

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική Ενότητα 8: Αρχεία και Δομές Νικόλαος Στεργιούλας Τμήμα Φυσικής Άδειες Χρήσης Το παρόν

Διαβάστε περισσότερα

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστημάτων Βάσεων Δεδομένων Εαρινό Εξάμηνο

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστημάτων Βάσεων Δεδομένων Εαρινό Εξάμηνο Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστημάτων Βάσεων Δεδομένων Εαρινό Εξάμηνο 2011 2012 Καθηγητές Μ. Χατζόπουλος, Δ. Γουνόπουλος Άσκηση 1 Παράδοση 4 Μαϊου Σκοπός της εργασίας αυτής είναι η κατανόηση

Διαβάστε περισσότερα

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία. Εργαστήριο 4 ο : MATLAB

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία. Εργαστήριο 4 ο : MATLAB Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Ηλεκτρονική Υγεία Εργαστήριο 4 ο : MATLAB Αν. καθηγητής Αγγελίδης Παντελής e-mail: paggelidis@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες

Διαβάστε περισσότερα

1. Εισαγωγή. Λειτουργικά Συστήματα Η/Υ. Διεργασίες. Ορισμός ΚΕΦΑΛΑΙΟ 3 - ΔΙΕΡΓΑΣΙΕΣ. Κεφάλαιο 3 «Διεργασίες»

1. Εισαγωγή. Λειτουργικά Συστήματα Η/Υ. Διεργασίες. Ορισμός ΚΕΦΑΛΑΙΟ 3 - ΔΙΕΡΓΑΣΙΕΣ. Κεφάλαιο 3 «Διεργασίες» 1. Εισαγωγή Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 3 «Διεργασίες» Διδάσκων: Δ Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας Η έννοια της διεργασίας (process) είναι θεμελιώδης για την κατανόηση του τρόπου με τον οποίο

Διαβάστε περισσότερα

Εισαγωγή στα Λειτουργικά

Εισαγωγή στα Λειτουργικά Εισαγωγή στα Λειτουργικά Συστήματα Ενότητα 6: Διαχείριση Μνήμης Ι Γεώργιος Φ. Φραγκούλης Τμήμα Ηλεκτρολόγων Μηχανικών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σεάδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: 7/1/2014, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: 7/1/2014, 22:00 ΣΕΤ ΑΣΚΗΣΕΩΝ 3 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2013-2014 Προθεσµία: 7/1/2014, 22:00 Περιεχόµενα Διαβάστε πριν ξεκινήσετε Εκφώνηση άσκησης 1 Οδηγίες αποστολής άσκησης Πριν ξεκινήσετε (ΔΙΑΒΑΣΤΕ

Διαβάστε περισσότερα

Εφαρμογές Πληροφορικής στην Τοπογραφία 9η Ενότητα - Εκτυπώσεις στο AutoCAD

Εφαρμογές Πληροφορικής στην Τοπογραφία 9η Ενότητα - Εκτυπώσεις στο AutoCAD Εφαρμογές Πληροφορικής στην Τοπογραφία 9η Ενότητα - Εκτυπώσεις στο AutoCAD Τσιούκας Βασίλειος, Αναπληρωτής Καθηγητής Τμήμα Αγρονόμων Τοπογράφων Μηχανικών Θεσσαλονίκη, Φεβρουάριος 2014 Άδειες Χρήσης Το

Διαβάστε περισσότερα

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:04 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Εργαστήριο Λειτουργικών Συστημάτων - Αλγόριθμοι Χρονοπρογραμματισμού. Εργαστηριακή Άσκηση

Εργαστήριο Λειτουργικών Συστημάτων - Αλγόριθμοι Χρονοπρογραμματισμού. Εργαστηριακή Άσκηση Εργαστηριακή Άσκηση Οι Αλγόριθμοι Χρονοπρογραμματισμού First Come First Serve (FCFS), Shortest Job First (SJF), Round Robin (RR), Priority Weighted (PRI) Επιμέλεια: Βασίλης Τσακανίκας Περιεχόμενα Αλγόριθμοι

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσμία: 17/1/14, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσμία: 17/1/14, 22:00 ΣΕΤ ΑΣΚΗΣΕΩΝ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2013-2014 Προθεσμία: 17/1/14, 22:00 Περιεχόμενα Διαδικαστικά Οδηγίες Αποστολής Εκφώνηση άσκησης (Στάδιο 0, Στάδιο 1, Στάδιο 2, Στάδιο 3, Στάδιο

Διαβάστε περισσότερα

ΛΥΜΕΝΑ ΠΡΟΒΛΗΜΑΤΑ. Γράψτε τις επόμενες διαδικασίες σε όποια γλώσσα προγραμματισμού προτιμάτε:

ΛΥΜΕΝΑ ΠΡΟΒΛΗΜΑΤΑ. Γράψτε τις επόμενες διαδικασίες σε όποια γλώσσα προγραμματισμού προτιμάτε: ΛΥΜΕΝΑ ΠΡΟΒΛΗΜΑΤΑ Πρόβλημα 1: Το Πανεπιστήμιο Μακεδονίας, εφαρμόζοντας την αρχή της ισότητας μεταξύ των δύο φύλων μετέτρεψε τις τουαλέτες των φοιτητών σε κοινές τουαλέτες. Προς αποφυγή όμως παρεξηγήσεων

Διαβάστε περισσότερα

Πληροφορική & Τηλεπικοινωνίες Υλοποίηση Συστημάτων Βάσεων Δεδομένων - Χειμερινό Εξάμηνο Καθηγητής Δ. Γουνόπουλος

Πληροφορική & Τηλεπικοινωνίες Υλοποίηση Συστημάτων Βάσεων Δεδομένων - Χειμερινό Εξάμηνο Καθηγητής Δ. Γουνόπουλος Πληροφορική & Τηλεπικοινωνίες Υλοποίηση Συστημάτων Βάσεων Δεδομένων - Χειμερινό Εξάμηνο 2016 2017 Καθηγητής Δ. Γουνόπουλος Άσκηση 1 - Προθεσμία: 9 Δεκ. 2016 Σκοπός της εργασίας αυτής είναι η κατανόηση

Διαβάστε περισσότερα

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: Λειτουργικά Συστήματα Ι ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Διδάσκων: Καθ. Κ. Λαμπρινουδάκης clam@unipi.gr 1 Χρονοδρομολογητής ή χρονοπρογραμματιστής (scheduler) είναι το τμήμα του Λ.Σ.

Διαβάστε περισσότερα

Προγραμματισμός Διαδικτύου Ασκήσεις Εργαστηρίου

Προγραμματισμός Διαδικτύου Ασκήσεις Εργαστηρίου Προγραμματισμός Διαδικτύου Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 11 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 3: Πίνακες, Δομές και Δυναμική Διαχείριση Μνήμης Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 2: Εκφράσεις, πίνακες και βρόχοι 14 Απριλίου 2016 Το σημερινό εργαστήριο

Διαβάστε περισσότερα