Σηματοφόροι (Σηματοφορείς) Ταυτόχρονος Προγραμματισμός 1
|
|
- Κίρκη Καζαντζής
- 6 χρόνια πριν
- Προβολές:
Transcript
1 Σηματοφόροι (Σηματοφορείς) 1 lalis@inf.uth.gr
2 Αποφυγή ενεργής αναμονής εναλλαγή if/while () { WAIT(); Μπορεί να γίνει εναλλαγή αφού το νήμα κάνει τον έλεγχο της συνθήκης αναμονής και την βρει αληθή, αλλά προτού αυτό προλάβει να μπλοκάρει Θέλουμε ατομικό έλεγχο της συνθήκης αναμονής και μπλοκάρισμα του νήματος αν αυτή ισχύει 2 lalis@inf.uth.gr
3 Σηματοφόροι (semaphores) Αφηρημένος τύπος δεδομένων με 3 λειτουργίες: init(sem s, int val) αρχικοποιεί τον σηματοφόρο στην τιμή val >=0 down(sem s) (ή wait ή P) επιχειρεί να μειώσει την τιμή του σηματοφόρου κατά 1 αν η τιμή του s είναι 0, το καλών νήμα μπλοκάρεται up(sem s) (ή signal ή V) αν υπάρχει μπλοκαρισμένο νήμα, αυτό ξεμπλοκάρεται διαφορετικά, αυξάνει την τιμή του σηματοφόρου κατά 1 Οι down/up λειτουργούν υπό ταυτόχρονη εκτέλεση η εσωτερική υλοποίηση δεν μας ενδιαφέρει (προς στιγμή) Γενικό εργαλείο συγχρονισμού 3 lalis@inf.uth.gr
4 down up black box init value thread queue sem s τρέχουσα τιμή σηματοφόρου ουρά νημάτων που έχουν μπλοκάρει στον σηματοφόρο 4 lalis@inf.uth.gr
5 Τύποι σηματοφόρων 1. Εύρος τιμών Γενικοί/μετρητές: >=0 Δυαδικοί: 0 ή 1 2. Προτεραιότητα/σειρά με την οποία ξεμπλοκάρονται (μέσω up) τα νήματα που έχουν μπλοκάρει στην down Random: η επιλογή γίνεται με τυχαία σειρά (θεωρητικά, υπάρχει περίπτωση λιμοκτονίας) Fair: η επιλογή γίνεται έτσι ώστε να μην υπάρχει περίπτωση λιμοκτονίας για κανένα νήμα FIFO: ξεμπλοκάρεται το νήμα που μπλόκαρε πριν από τα υπόλοιπα 5 lalis@inf.uth.gr
6 Κρίσιμο τμήμα με σηματοφόρους Αρκεί ένας δυαδικός σηματοφόρος Αρχικοποίηση: ο σηματοφόρος λαμβάνει την τιμή 1 Κώδικας εισόδου: μείωση του σηματοφόρου Κώδικας εξόδου: αύξηση του σηματοφόρου 6 lalis@inf.uth.gr
7 Κρίσιμο τμήμα με σηματοφόρους sem s; Pi: /* entry code */ i /* exit code */ 7 lalis@inf.uth.gr
8 πριν αρχίσει η εκτέλεση s? {? συμβολική (όχι απαραίτητα αυτή μιας πραγματικής υλοποίησης) τιμή ουρά αναμονής 8 lalis@inf.uth.gr
9 αρχικοποίηση σηματοφόρου με 1 s 1 { 9 lalis@inf.uth.gr
10 running ready ready εναλλαγή σε P0 s 1 { 10 lalis@inf.uth.gr
11 ready running ready εναλλαγή σε P1 s 1 { 11 lalis@inf.uth.gr
12 running ready ready εναλλαγή σε P0, P0 καλεί down, ο σηματοφόρος μειώνεται κατά 1 s 0 { 12 lalis@inf.uth.gr
13 running ready ready P0 εισέρχεται στο ΚΤ s 0 { 13 lalis@inf.uth.gr
14 ready running ready εναλλαγή σε P1 s 0 { 14 lalis@inf.uth.gr
15 ready waiting ready P1 καλεί down, ο σηματοφόρος έχει τιμή 0, P1 μπλοκάρεται μέσα στην down s 0 {P1 15 lalis@inf.uth.gr
16 ready waiting running εναλλαγή σε P2 s 0 {P1 16 lalis@inf.uth.gr
17 ready waiting waiting P2 καλεί down, ο σηματοφόρος έχει τιμή 0, P2 μπλοκάρεται μέσα στην down s 0 {P1,P2 17 lalis@inf.uth.gr
18 running waiting waiting εναλλαγή σε P0 s 0 {P1,P2 18 lalis@inf.uth.gr
19 running waiting waiting P0 εξέρχεται από το ΚΤ, καλεί up, και βγάζει το P1 από την ουρά s 0 {P1,P2 19 lalis@inf.uth.gr
20 running ready waiting P0 εξέρχεται από το ΚΤ, καλεί up, και βγάζει το P1 από την ουρά s 0 {P1,P2 20 lalis@inf.uth.gr
21 running ready waiting P0 συνεχίζει s 0 {P2 21 lalis@inf.uth.gr
22 running ready waiting P0 συνεχίζει s 0 {P2 22 lalis@inf.uth.gr
23 waiting ready waiting P0 καλεί down, ο σηματοφόρος έχει τιμή 0, P0 μπλοκάρεται μέσα στην down s 0 {P2,P0 23 lalis@inf.uth.gr
24 waiting running waiting εναλλαγή σε P1 s 0 {P2,P0 24 lalis@inf.uth.gr
25 waiting running waiting P1 εισέρχεται στο ΚΤ s 0 {P2,P0 25 lalis@inf.uth.gr
26 waiting running waiting P1 εξέρχεται από το ΚΤ, καλεί up, και βγάζει το P2 από την ουρά s 0 {P2,P0 26 lalis@inf.uth.gr
27 waiting running ready P1 εξέρχεται από το ΚΤ, καλεί up, και βγάζει το P2 από την ουρά s 0 {P2,P0 27 lalis@inf.uth.gr
28 waiting running ready P1 συνεχίζει s 0 {P0 28 lalis@inf.uth.gr
29 waiting ready running εναλλαγή σε P2 s 0 {P0 29 lalis@inf.uth.gr
30 waiting ready running P2 εισέρχεται στο ΚΤ s 0 {P0 30 lalis@inf.uth.gr
31 waiting running ready εναλλαγή σε P1 s 0 {P0 31 lalis@inf.uth.gr
32 waiting running ready P1 συνεχίζει s 0 {P0 32 lalis@inf.uth.gr
33 waiting waiting ready P1 καλεί down, ο σηματοφόρος έχει τιμή 0, P1 μπλοκάρεται μέσα στην down s 0 {P0,P1 33 lalis@inf.uth.gr
34 waiting waiting running P2 συνεχίζει s 0 {P0,P1 34 lalis@inf.uth.gr
35 waiting waiting running P2 εξέρχεται από το ΚΤ, καλεί up, και βγάζει το P0 από την ουρά s 0 {P0,P1 35 lalis@inf.uth.gr
36 ready waiting running P2 εξέρχεται από το ΚΤ, καλεί up, και βγάζει το P0 από την ουρά s 0 {P0,P1 36 lalis@inf.uth.gr
37 ready waiting running P2 συνεχίζει s 0 {P1 37 lalis@inf.uth.gr
38 running waiting ready εναλλαγή σε P0 s 0 {P1 38 lalis@inf.uth.gr
39 running waiting ready P0 εισέρχεται στο ΚΤ s 0 {P1 39 lalis@inf.uth.gr
40 running waiting ready P0 εξέρχεται από το ΚΤ, καλεί up, και βγάζει το P1 από την ουρά s 0 {P1 40 lalis@inf.uth.gr
41 running ready ready P0 εξέρχεται από το ΚΤ, καλεί up, και βγάζει το P1 από την ουρά s 0 {P1 41 lalis@inf.uth.gr
42 running ready ready P0 συνεχίζει s 0 { 42 lalis@inf.uth.gr
43 ready running ready εναλλαγή σε P1 s 0 { 43 lalis@inf.uth.gr
44 ready running ready το P1 εισέρχεται στο ΚΤ s 0 { 44 lalis@inf.uth.gr
45 ready running ready P1 εξέρχεται από το ΚΤ, καλεί up, και αυξάνει την τιμή του s κατά 1 s 1 { 45 lalis@inf.uth.gr
46 ready running ready P1 συνεχίζει την εκτέλεση του s 1 { 46 lalis@inf.uth.gr
47 «Χαμένες» κλήσεις της up Ένας δυαδικός σηματοφόρος παίρνει μόνο τιμές 0,1 Όταν η τιμή είναι 1 (δεν υπάρχουν νήματα που έχουν μπλοκάρει στην down), τυχόν επιπλέον κλήσεις της up δεν έχουν κανένα απολύτως αποτέλεσμα Η κλήση της up «χάνεται» Μια υλοποίηση μπορεί να επιτρέπει τέτοιες χαμένες κλήσεις, χωρίς να επιστρέφεται κωδικός λάθους Κώδικας σε επίπεδο εφαρμογής που μπορεί να οδηγεί σε χαμένες κλήσεις της up θεωρείται άκομψος και συνήθως πρόκειται για προγραμματιστικό λάθος 47 lalis@inf.uth.gr
48 Παράδειγμα: ραντεβού Το P1 πρέπει να περιμένει στο σημείο Α του κώδικα του, μέχρι το P2 να φτάσει στο σημείο Β του δικού του κώδικα Αυτό μπορεί να χρειαστεί να γίνει πολλές φορές P1 Α P2 Β Πως μπορεί να υλοποιηθεί ο επιθυμητός συγχρονισμός με δυαδικούς σηματοφόρους; σημείο ραντεβού 48
49 bsem s; init(s,0); /* A */ /* B */ Σε ποια περίπτωση αυτή η λύση δεν είναι σωστή; Πως μπορεί να διορθωθεί το πρόβλημα; 49 lalis@inf.uth.gr
Σηματοφόροι (Σηματοφορείς) Ταυτόχρονος Προγραμματισμός 1
Σηματοφόροι (Σηματοφορείς) 1 lalis@inf.uth.gr Αποφυγή ενεργής αναμονής if () { WAIT(); Μπορεί να γίνει εναλλαγή αφού το νήμα κάνει τον έλεγχο της συνθήκης αναμονής και την βρει αληθή, αλλά προτού αυτό
Διαβάστε περισσότεραΥλοποίηση Σηματοφόρων
Υλοποίηση Σηματοφόρων 1 lalis@inf.uth.gr Υλοποίηση σε επίπεδο συστήματος Εσωτερική κατάσταση: Ένας ακέραιος για την αποθήκευση της τιμής του σηματοφόρου Μια ουρά αναμονής που τοποθετείται ένα νήμα όταν
Διαβάστε περισσότεραΣυγχρονισμός & σηματοφόροι. Προγραμματισμός II 1
Συγχρονισμός & σηματοφόροι Προγραμματισμός II 1 lalis@inf.uth.gr Ταυτόχρονη εκτέλεση Οι διεργασίες εκτελούνται ταυτόχρονα μεταξύ τους Ο προγραμματιστής δεν ελέγχει την εναλλαγή Τι γίνεται αν δύο ή περισσότερες
Διαβάστε περισσότεραΕλεγκτές/Παρακολουθητές (Monitors) Ταυτόχρονος Προγραμματισμός 1
Ελεγκτές/Παρακολουθητές (Monitors) 1 lalis@inf.uth.gr Ελεγκτές Αμοιβαίος αποκλεισμός στο πλαίσιο ενός τμήματος λογισμικού που προσπελάζεται με δομημένο τρόπο, μέσω προκαθορισμένης διασύνδεσης (API) Ο συγχρονισμός
Διαβάστε περισσότεραΕλεγκτές/Παρακολουθητές (Monitors) Ταυτόχρονος Προγραμματισμός 1
Ελεγκτές/Παρακολουθητές (Monitors) 1 lalis@inf.uth.gr Ελεγκτές Αμοιβαίος αποκλεισμός στο πλαίσιο ενός τμήματος λογισμικού που προσπελάζεται με δομημένο τρόπο, μέσω προκαθορισμένης διασύνδεσης (API) Ο συγχρονισμός
Διαβάστε περισσότεραΚρίσιμη Περιοχή Υπό Συνθήκη (Conditional Critical Regions) Ταυτόχρονος Προγραμματισμός 1
Κρίσιμη Περιοχή Υπό Συνθήκη (onditional ritical Regions) Ταυτόχρονος Προγραμματισμός 1 lalis@inf.uth.gr Πέρα από ελεγκτές Ο ελεγκτής είναι χρήσιμο εργαλείο συγχρονισμού παρέχει στον προγραμματιστή εγγυημένο
Διαβάστε περισσότεραΠροβλήματα Συγχρονισμού (με ελεγκτή) Ταυτόχρονος Προγραμματισμός 1
Προβλήματα Συγχρονισμού (με ελεγκτή) Ταυτόχρονος Προγραμματισμός 1 lalis@inf.uth.gr Υλοποίηση σηματοφόρων Οι σηματοφόροι είναι ένας ΑΤΔ με συγκεκριμένες λειτουργίες πρόσβασης Μπορεί να υλοποιηθούν με «φυσικό»
Διαβάστε περισσότεραΚλασικά Προβλήματα Συγχρονισμού (με σηματοφόρους) Ταυτόχρονος Προγραμματισμός 1
Κλασικά Προβλήματα Συγχρονισμού (με σηματοφόρους) 1 lalis@inf.uth.gr Παραγωγός-Καταναλωτής (με σηματοφόρους) 2 lalis@inf.uth.gr Παραγωγός-καταναλωτής Νήματα που παράγουν / καταναλώνουν δεδομένα τα οποία
Διαβάστε περισσότεραΑμοιβαίος αποκλεισμός με κοινή μνήμη. Ταυτόχρονος Προγραμματισμός 1
Αμοιβαίος αποκλεισμός με κοινή μνήμη 1 lalis@inf.uth.gr Το πρόβλημα Έστω ότι δύο η περισσότερα νήματα επιθυμούν να προσπελάσουν έναν κοινό πόρο, που όμως δεν μπορεί να χρησιμοποιηθεί ταυτόχρονα Η χρήση
Διαβάστε περισσότεραΠαράλληλη Επεξεργασία
Παράλληλη Επεξεργασία Φροντιστήριο: Συγχρονισμός (συνέχεια) Μεταβλητές υπό συνθήκη Εργαστήριο Πληροφοριακών Συστημάτων Υψηλής Επίδοσης Parallel and Distributed Systems Group Συγχρονισμός μεταξύ νημάτων
Διαβάστε περισσότεραΣύγχρονη επικοινωνία με ανταλλαγή μηνυμάτων (CSP message passing model) Ταυτόχρονος Προγραμματισμός 1
Σύγχρονη επικοινωνία με ανταλλαγή μηνυμάτων (CSP message passing model) Ταυτόχρονος Προγραμματισμός 1 lalis@inf.uth.gr Σύγχρονα κανάλια επικοινωνίας Μέρος του Communicating Sequential Processes (CSP) που
Διαβάστε περισσότεραΘοδωρής Ανδρόνικος Τμήμα Πληροφορικής, Ιόνιο Πανεπιστήμιο
Θοδωρής Ανδρόνικος Τμήμα Πληροφορικής, Ιόνιο Πανεπιστήμιο Για το μάθημα «Διαχείριση Λειτουργικών Συστημάτων» του ακαδημαϊκού έτους 2015 2016, το προτεινόμενο σύγγραμμα είναι το: Operating Systems: Internals
Διαβάστε περισσότεραΔιεργασίες (Processes)
Διεργασία (process) ή καθήκον (task) Διεργασίες (Processes) στοιχειώδης οντότητα/δραστηριότητα υπολογισμού (processing entity/activity) εκτέλεση ενός προγράμματος ένα (κύριο) νήμα (thread)/ρεύμα ελέγχου/εκτέλεσης
Διαβάστε περισσότεραΑμοιβαίος αποκλεισμός με κοινή μνήμη. Ταυτόχρονος Προγραμματισμός 1
Αμοιβαίος αποκλεισμός με κοινή μνήμη 1 lalis@inf.uth.gr Το πρόβλημα Έστω ότι δύο η περισσότερα νήματα επιθυμούν να προσπελάσουν έναν κοινό πόρο, που όμως δεν μπορεί να χρησιμοποιηθεί ταυτόχρονα Η χρήση
Διαβάστε περισσότεραΕργαστήριο 14. Συγχρονισμός Νημάτων (χρήση pthread_mutex_t, pthread_cond_t)
Εργαστήριο 14 Συγχρονισμός Νημάτων (χρήση pthread_mutex_t, pthread_cond_t) Να γράψετε πρόγραμμα που να δημιουργεί 1 νήμα Έτσι στο πρόγραμμα σας θα υπάρχουν 2 νήματα (το ένα νήμα είναι το αρχικό νήμα που
Διαβάστε περισσότεραΠροβλήματα Συγχρονισμού (με ελεγκτή) Ταυτόχρονος Προγραμματισμός 1
Προβλήματα Συγχρονισμού (με ελεγκτή) Ταυτόχρονος Προγραμματισμός 1 lalis@inf.uth.gr Σηματοφόροι Οι σηματοφόροι είναι ένας ΑΤΔ με συγκεκριμένες λειτουργίες πρόσβασης Μπορεί να υλοποιηθούν εύκολα με τον
Διαβάστε περισσότεραΛειτουργικά Συστήματα
1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Λειτουργικά Συστήματα Ενότητα 5 : Αμοιβαίος Αποκλεισμός Δημήτριος Λιαροκάπης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών
Διαβάστε περισσότεραΣύγχρονη επικοινωνία με ανταλλαγή μηνυμάτων (CSP message passing model) Ταυτόχρονος Προγραμματισμός 1
Σύγχρονη επικοινωνία με ανταλλαγή μηνυμάτων (CSP message passing model) Ταυτόχρονος Προγραμματισμός 1 lalis@inf.uth.gr Σύγχρονα κανάλια επικοινωνίας Μέρος του Communicating Sequential Processes (CSP) που
Διαβάστε περισσότεραΑμοιβαίος αποκλεισμός με κοινή μνήμη. Ταυτόχρονος Προγραμματισμός 1
Αμοιβαίος αποκλεισμός με κοινή μνήμη 1 lalis@inf.uth.gr Το πρόβλημα Έστω ότι δύο η περισσότερα νήματα επιθυμούν να προσπελάσουν έναν κοινό πόρο, που όμως δεν μπορεί να χρησιμοποιηθεί ταυτόχρονα Η χρήση
Διαβάστε περισσότεραΛειτουργικά Συστήματα Η/Υ
Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 5 «Αμοιβαίος Αποκλεισμός» Διδάσκων: Δ Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας 1 Αμοιβαίος Αποκλεισμός 1. Εισαγωγή 2. Κρίσιμα τμήματα (Critical Sections) 3. Υλοποίηση του
Διαβάστε περισσότεραΤο μάθημα. Λειτουργικά Συστήματα Πραγματικού Χρόνου Βασικές Έννοιες 6. Ενσωματωμένα Συστήματα (embedded systems) Παραδείγματα
Λειτουργικά Συστήματα Πραγματικού Χρόνου 2006-07 Λειτουργικά Συστήματα Πραγματικού Χρόνου Βασικές Έννοιες Το μάθημα ΛΣ Πραγματικού Χρόνου Θεωρητικό υπόβαθρο Αρχές Προγραμματισμού Παραδείγματα ΛΣ Εργασίες
Διαβάστε περισσότεραιεργασίες και νήµατα Προγραµµατισµός ΙΙΙ 1 lalis@inf.uth.gr
ιεργασίες και νήµατα Προγραµµατισµός ΙΙΙ 1 lalis@inf.uth.gr Η έννοια της διεργασίας ιεργασία (process) είναι ο µηχανισµός εκτέλεσης ενός προγράµµατος σε ένα λειτουργικό σύστηµα. Η διεργασία είναι µια ενεργή
Διαβάστε περισσότεραΕισαγωγικά & Βασικές Έννοιες
Εισαγωγικά & Βασικές Έννοιες ΙΙΙ 1 lalis@inf.uth.gr Γιατί πολλές διεργασίες/νήματα; Επίπεδο εφαρμογής Καλύτερη δόμηση κώδικα Αποφυγή μπλοκαρίσματος / περιοδικών ελέγχων Φυσική έκφραση παραλληλισμού Επίπεδο
Διαβάστε περισσότεραΠροβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)
Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Ταυτόχρονη εκτέλεση Ο προγραμματιστής δεν ελέγχει (άμεσα) την εκτέλεση/εναλλαγή των νημάτων Δεν γνωρίζει πότε θα αρχίσει
Διαβάστε περισσότεραΕισαγωγικά & Βασικές Έννοιες
Εισαγωγικά & Βασικές Έννοιες ΙΙΙ 1 lalis@inf.uth.gr Γιατί πολλές διεργασίες/νήματα; Επίπεδο εφαρμογής Καλύτερη δόμηση κώδικα Αποφυγή μπλοκαρίσματος / περιοδικών ελέγχων Φυσική έκφραση παραλληλισμού Επίπεδο
Διαβάστε περισσότεραΟρθότητα λειτουργίας τμημάτων λογισμικού & δομών δεδομένων υπό ταυτόχρονη εκτέλεση
Ορθότητα λειτουργίας τμημάτων λογισμικού & δομών δεδομένων υπό ταυτόχρονη εκτέλεση ΙΙΙ 1 lalis@inf.uth.gr Ορθή συμπεριφορά τμήματος λογισμικού Ένα τμήμα λογισμικού (ή ένας ΑΤΔ) προσπελάζεται με δομημένο/ελεγχόμενο
Διαβάστε περισσότεραΠαράλληλη Επεξεργασία
Παράλληλη Επεξεργασία Φροντιστήριο: Νήματα & Συγχρονισμός Μεταβλητές κλειδιά Φράγματα Εργαστήριο Πληροφοριακών Συστημάτων Υψηλής Επίδοσης Parallel and Distributed Systems Group Συγχρονισμός μεταξύ νημάτων
Διαβάστε περισσότεραΟρθότητα λειτουργίας τμημάτων λογισμικού & δομών δεδομένων υπό ταυτόχρονη εκτέλεση
Ορθότητα λειτουργίας τμημάτων λογισμικού & δομών δεδομένων υπό ταυτόχρονη εκτέλεση ΙΙΙ 1 lalis@inf.uth.gr Ορθή συμπεριφορά τμήματος λογισμικού Ένα τμήμα λογισμικού (ή ένας ΑΤΔ) προσπελάζεται με δομημένο/ελεγχόμενο
Διαβάστε περισσότεραΛειτουργικά Συστήματα Πραγματικού Χρόνου
Λειτουργικά Συστήματα Πραγματικού Χρόνου 2006-07 Λειτουργικά Συστήματα Πραγματικού Χρόνου Βασικές Έννοιες Μ.Στεφανιδάκης Το μάθημα ΛΣ Πραγματικού Χρόνου Θεωρητικό υπόβαθρο Αρχές Προγραμματισμού Παραδείγματα
Διαβάστε περισσότεραDr. Garmpis Aristogiannis - EPDO TEI Messolonghi
Προϋποθέσεις για Αµοιβαίο Αποκλεισµό Μόνο µία διεργασία σε κρίσιµο τµήµασεκοινό πόρο Μία διεργασία που σταµατά σε µη κρίσιµο σηµείο δεν πρέπει να επιρεάζει τις υπόλοιπες διεργασίες εν πρέπει να υπάρχει
Διαβάστε περισσότεραΕργαστήριο ΔΙΕΡΓΑΣΙΕΣ - ΔΙΑΧΕΙΡΙΣΗ
Εργαστήριο ΔΙΕΡΓΑΣΙΕΣ - ΔΙΑΧΕΙΡΙΣΗ Εισαγωγή Σκοπός τόσο αυτού του εργαστηρίου, όσο και των εργαστηρίων που ακολουθούν, είναι να γνωρίσουμε τους τρόπους δημιουργίας και διαχείρισης των διεργασιών (processes)
Διαβάστε περισσότεραΕισαγωγή στα Λειτουργικά Συστήματα
Εισαγωγή στα Λειτουργικά Συστήματα Ενότητα 4: Διεργασίες ΙΙ Γεώργιος Φ. Φραγκούλης Τμήμα Ηλεκτρολόγων Μηχανικών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για
Διαβάστε περισσότεραΚατανεμημένα Συστήματα
Κατανεμημένα Συστήματα Σημειώσεις εργαστηρίου Lab#7 - Διεργασίες, Nήματα, Πολυνημάτωση στη Python Νεβράντζας Βάιος-Γερμανός Λάρισα, Φεβρουάριος 2013 Lab#7 - Διεργασιές, Νη ματα, Πολυνημα τωση στη Python,
Διαβάστε περισσότεραΒασικές Έννοιες Πρ Ταο υγρ τόα χ μ ρ μ ο α ν τισμ ος Π ό ρ ςο ΙΙΙ γραμματισμός 1
Βασικές Έννοιες ΙΙΙ 1 lalis@inf.uth.gr Μονονηματική / πολυνηματική εκτέλεση Μονονηματικό μοντέλο εκτέλεσης (συμβατικό) Οι εντολές του κώδικα εκτελούνται σειριακά Ένα μοναδικό νήμα εκτέλεσης (execution
Διαβάστε περισσότεραΛειτουργικά Συστήματα (ΗΥ222)
Λειτουργικά Συστήματα (ΗΥ222) Διάλεξη 5: Αδιέξοδα Συγχρονισμός στον Πραγματικό Κόσμο Χρειάζεται οποτεδήποτε > 1 χρήστης πόρου Λίγο πολύ οι ίδιες λύσεις με τον πραγματικό κόσμο: κλείδωμα (στo WC), χρονοπρογραμματισμός
Διαβάστε περισσότεραΠρογραμματισμός Ταυτόχρονος Προγραμματισμός
Εισαγωγικά & Βασικές Έννοιες ΙΙΙ 1 lalis@inf.uth.gr Γιατί πολλές διεργασίες/νήματα; Επίπεδο εφαρμογής Καλύτερη δόμηση κώδικα Αποφυγή μπλοκαρίσματος / περιοδικών ελέγχων Φυσική έκφραση παραλληλισμού Επίπεδο
Διαβάστε περισσότεραΠροβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)
Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Υποθέσεις εργασίας Νήματα/διεργασίες με κοινή μνήμη Αυτόματη διακοπή/εναλλαγή νημάτων/διεργασιών (π.χ. πάνω από 1 CPU
Διαβάστε περισσότεραΔΙΕΡΓΑΣΙΕΣ. Λειτουργικά Συστήματα Ι. Διδάσκων: Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: Λειτουργικά Συστήματα Ι ΔΙΕΡΓΑΣΙΕΣ Διδάσκων: Καθ. Κ. Λαμπρινουδάκης clam@unipi.gr 1 ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΔΙΕΡΓΑΣΙΕΣ Διεργασία (Process) είναι η αφαιρετική θεώρηση ενός προγράμματος
Διαβάστε περισσότεραΔιάλεξη 8: Πρόβλημα Αμοιβαίου Αποκλεισμού. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι
Διάλεξη 8: Πρόβλημα Αμοιβαίου Αποκλεισμού ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Μοντέλο Κοινόχρηστης Μνήμης Αλγόριθμοι Αμοιβαίου Αποκλεισμού με Ισχυρούς Καταχωρητές ΕΠΛ432: Κατανεµηµένοι
Διαβάστε περισσότεραΤ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων
Εργαστήριο Java Lab09 Αντικείμενο: Πολυνηματικές εφαρμογές Η χρήση περισσότερων από μιας ροής εντολών μέσα σε ένα πρόγραμμα είναι γνωστή ως multithreading. H κάθε μια ροή εντολών μέσα στο πρόγραμμα ονομάζεται
Διαβάστε περισσότεραΣκελετός Παρουσίασης
Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άδεια χρήσης άλλου τύπου, αυτή πρέπει να αναφέρεται ρητώς. Σκελετός
Διαβάστε περισσότεραΠροβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)
Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Υποθέσεις εργασίας Νήματα/διεργασίες με κοινή μνήμη Αυτόματη διακοπή/εναλλαγή νημάτων/διεργασιών (π.χ. πάνω από 1 CPU
Διαβάστε περισσότεραΔιεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1
Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 lalis@inf.uth.gr Πρόγραμμα και εκτέλεση προγράμματος Ο εκτελέσιμος κώδικας αποθηκεύεται σε ένα αρχείο Το αρχείο είναι μια «παθητική» οντότητα
Διαβάστε περισσότεραΠροσπέλαση σύνθετων δομών δεδομένων χωρίς καθολικό κλείδωμα
Προσπέλαση σύνθετων δομών δεδομένων χωρίς καθολικό κλείδωμα ΙΙΙ 1 lalis@inf.uth.gr Προβλήματα με κλείδωμα Υπερβολική σειριοποίηση / άσκοπη αναμονή Κόστος συγχρονισμού Αδιέξοδα Απότομος τερματισμός νημάτων
Διαβάστε περισσότεραΕργαστήριο Διοίκησης Παραγωγής & Έργων. Εισαγωγή στην προσομοίωση διεργασιών χρησιμοποιώντας το λογισμικό Extend
Εργαστήριο Διοίκησης Παραγωγής & Έργων Εισαγωγή στην προσομοίωση διεργασιών χρησιμοποιώντας το λογισμικό Extend ΕΠΙΣΚΟΠΗΣΗ ΤΟΥ EXTEND Το Extend είναι ένα λογισμικό εικονικής προσομοίωσης που μπορεί να
Διαβάστε περισσότεραΠροβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)
Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Υποθέσεις εργασίας Νήματα/διεργασίες με κοινή μνήμη Αυτόματη διακοπή/εναλλαγή νημάτων/διεργασιών (π.χ. πάνω από 1 CPU
Διαβάστε περισσότεραΛειτουργικά Συστήματα (ΗΥ222)
Λειτουργικά Συστήματα (ΗΥ222) Ταυτοχρονισμός, Συγχρονισμός Πολλαπλές Διεργασίες/Νήματα σε 1 Κοινωνία: Προβλήματα; «Κοινωνικές Γιάννης διεργασίες/νήματα»: Διαβάζουν/γράφουν στον ίδιο χώρο. Αποτέλεσμα; Πιθανότατα
Διαβάστε περισσότεραΑμοιβαίος αποκλεισμός με ασύγχρονη επικοινωνία (ανταλλαγή μηνυμάτων) Ταυτόχρονος Προγραμματισμός 1
Αμοιβαίος αποκλεισμός με ασύγχρονη επικοινωνία (ανταλλαγή μηνυμάτων) Ταυτόχρονος Προγραμματισμός 1 lalis@inf.uth.gr Μοντέλο δικτύου/επικοινωνίας Αξιοπιστία (δεν χάνονται μηνύματα) Άγνωστη ταχύτητα μετάδοσης
Διαβάστε περισσότεραΛειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος 2010-2011
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Λειτουργικά
Διαβάστε περισσότεραΕικονική Μνήμη (Virtual Memory) Προγραμματισμός II 1
Εικονική Μνήμη (Virtual Memory) Προγραμματισμός II 1 lalis@inf.uth.gr Μνήμη και επικοινωνία διεργασιών Κάθε διεργασία έχει δική της ιδιωτική μνήμη Μια διεργασία δεν μπορεί να γράψει/διαβάσει από/σε θέσεις
Διαβάστε περισσότεραΝήµατα. Πολύ σηµαντικό
Νήµατα Πολύ σηµαντικό 1 Νήµατα (συν.) Σηµαντικό 2 Νήµατα vs ιεργασίες Νήµατα ιεργασίες Χώρος εδοµένων Περιγραφητές Αρχείων fork exit exec Σήµατα Κοινός. Ότι αλλάζει το 1 νήµα το βλέπουν/ αλλάζουν και τα
Διαβάστε περισσότεραΔιεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1
Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 lalis@inf.uth.gr Ο κώδικας δεν εκτελείται «μόνος του» Ο εκτελέσιμος κώδικας αποθηκεύεται σε ένα αρχείο Το αρχείο είναι μια «παθητική» οντότητα
Διαβάστε περισσότεραΒιβλιοθήκες Αφηρημένοι τύποι δεδομένων. Προγραμματισμός II 1
Βιβλιοθήκες Αφηρημένοι τύποι δεδομένων Προγραμματισμός II 1 lalis@inf.uth.gr Βιβλιοθήκες Τμήματα λογισμικού ευρύτερης χρησιμότητας που έχουν σχεδιαστεί με σκοπό να διευκολύνουν την ανάπτυξη πολλών διαφορετικών
Διαβάστε περισσότεραΛειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκό Έτος Κανονική Εξέταση Λύσεις
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Λειτουργικά
Διαβάστε περισσότεραΣυγχρονισμός Μέρος Α : Κρίσιμο τμήμα και κλειδώματα
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων Συγχρονισμός Μέρος Α : Κρίσιμο τμήμα και κλειδώματα 9 ο Εξάμηνο Η ανάγκη για συγχρονισμό
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΡΟΣΟΜΟΙΩΣΗ ΔΙΕΡΓΑΣΙΩΝ ΧΡΗΣΙΜΟΠΟΙΩΝΤΑΣ ΤΟ ΛΟΓΙΣΜΙΚΟ EXTEND. 1 ο εργαστήριο Διοίκησης και Παραγωγής Έργων
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΡΟΣΟΜΟΙΩΣΗ ΔΙΕΡΓΑΣΙΩΝ ΧΡΗΣΙΜΟΠΟΙΩΝΤΑΣ ΤΟ ΛΟΓΙΣΜΙΚΟ EXTEND 1 ο εργαστήριο Διοίκησης και Παραγωγής Έργων ΙΣΤΟΤΟΠΟΣ ΕΡΓΑΣΤΗΡΙΟΥ http://www.mech.upatras.gr/~adamides/dpe ΠΡΟΣΟΜΟΙΩΣΗ Η τεχνική
Διαβάστε περισσότεραΠΛΕ-006 ΠΑΡΑΛΛΗΛΗ ΕΠΕΞΕΡΓΑΣΙΑ Project
ΠΛΕ-006 ΠΑΡΑΛΛΗΛΗ ΕΠΕΞΕΡΓΑΣΙΑ 2012-13 Project Νήματα επιπέδου χρήστη (user-level threads) Νήματα Επιπέδου Χρήστη Τα νήματα αυτά αποτελούνται από ένα περιγραφέα (descriptor) που περιέχει Τις τιμές των καταχωρητών
Διαβάστε περισσότεραΠροσπέλαση σύνθετων δομών δεδομένων χωρίς καθολικό κλείδωμα
Προσπέλαση σύνθετων δομών δεδομένων χωρίς καθολικό κλείδωμα ΙΙΙ 1 lalis@inf.uth.gr Προβλήματα με κλείδωμα Υπερβολική σειριοποίηση / άσκοπη αναμονή Κόστος συγχρονισμού Αδιέξοδα Απότομος τερματισμός νημάτων
Διαβάστε περισσότερα50 Ketseo,Theoni Sarif,Omar 104
Κ24: Προγραμματισμός Συστήματος 3η Εργασία Εαρινό Εξάμηνο 2016 Προθεσμία Υποβολής: Κυριακή 5 Ιουνίου 2016 Ωρα 23:59 Εισαγωγή στην Εργασία: Ο στόχος της εργασίας αυτής είναι να εξοικειωθείτε με την χρήση
Διαβάστε περισσότεραΤο λειτουργικό σύστημα. Προγραμματισμός II 1
Το λειτουργικό σύστημα Προγραμματισμός II 1 lalis@inf.uth.gr Συστήματα υπολογιστών Ειδικού σκοπού συστήματα για μια συγκεκριμένη εφαρμογή η εφαρμογή είναι γνωστή εκ των προτέρων περιορισμένοι υπολογιστικοί
Διαβάστε περισσότεραΤο λειτουργικό σύστημα. Προγραμματισμός II 1
Το λειτουργικό σύστημα Προγραμματισμός II 1 lalis@inf.uth.gr Συστήματα υπολογιστών Ειδικού σκοπού συστήματα για μια συγκεκριμένη εφαρμογή η εφαρμογή είναι γνωστή εκ των προτέρων περιορισμένοι υπολογιστικοί
Διαβάστε περισσότεραΔιάλεξη Εισαγωγή στη Java, Μέρος Γ
Τμήμα Πληροφορικής και Τηλεπικοινωνιών Ανάπτυξη Λογισμικού για Δίκτυα και Τηλεπικοινωνίες Χειμερινό Εξάμηνο 2017-2018 Διάλεξη Εισαγωγή στη Java, Μέρος Γ Νήματα (Threads) στην Java Συγχρονισμός Producer-Consumer
Διαβάστε περισσότερα1. Εισαγωγή. Λειτουργικά Συστήματα Η/Υ. Διεργασίες. Ορισμός ΚΕΦΑΛΑΙΟ 3 - ΔΙΕΡΓΑΣΙΕΣ. Κεφάλαιο 3 «Διεργασίες»
1. Εισαγωγή Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 3 «Διεργασίες» Διδάσκων: Δ Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας Η έννοια της διεργασίας (process) είναι θεμελιώδης για την κατανόηση του τρόπου με τον οποίο
Διαβάστε περισσότεραΟρισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα
ΝΗΜΑΤΑ ΣΤΗ JAVA (1) Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα πρόγραµµα. Αιτία Η δυνατότητα αποµόνωσης (ή αυτονόµησης) κάποιων
Διαβάστε περισσότεραΛειτουργικά Συστήματα
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Λειτουργικά Συστήματα Ενότητα 4α: Σημαφόροι, Πρόβλημα Συνδαιτυμόνων Φιλοσόφων, Αδιέξοδα Αθηνά Βακάλη Άδειες Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΚατηγορίες Νηµάτων. Νήµατα Επιπέδου Πυρήνα. Νήµατα Επιπέδου Χρήστη. «Νήµατα Επιπέδου Χρήστη» Ε-85: Ειδικά Θέµατα Λογισµικού
Ε-85: Ειδικά Θέµατα Λογισµικού Προγραµµατισµός Συστηµάτων Υψηλών Επιδόσεων Χειµερινό Εξάµηνο 2009-10 «Νήµατα Επιπέδου Χρήστη» Κατηγορίες Νηµάτων Υπάρχουν δύο κατηγορίες νηµάτων Νήµατα επιπέδου πυρήνα (kernel
Διαβάστε περισσότεραΕθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων. Συγχρονισμός
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων 3 η Εργαστηριακή Άσκηση: Συγχρονισμός Λειτουργικά Συστήματα Υπολογιστών 7ο Εξάμηνο, 2017-2018
Διαβάστε περισσότεραHY-486 Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο
HY-486 Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο 2017-2018 Πρώτη Προγραμματιστική Εργασία Προθεσμία παράδοσης: Δευτέρα 30/4 στις 23:59. 1. Γενική Περιγραφή Στην πρώτη προγραμματιστική εργασία καλείστε
Διαβάστε περισσότεραΕθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων. Συγχρονισμός
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων 3 η Εργαστηριακή Άσκηση: Συγχρονισμός Λειτουργικά Συστήματα Υπολογιστών 7ο Εξάμηνο, 2016-2017
Διαβάστε περισσότεραΚεφάλαιο 3. Διδακτικοί Στόχοι
Κεφάλαιο 3 Σε ένα υπολογιστικό σύστημα η Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) εκτελεί τις εντολές που βρίσκονται στην κύρια μνήμη του. Οι εντολές αυτές ανήκουν σε προγράμματα τα οποία, όταν εκτελούνται,
Διαβάστε περισσότεραΚΕΦΑΛΑΙΟ 9. Ταυτόχρονος προγραμματισμός και νήματα. 9.1 Εισαγωγή
ΚΕΦΑΛΑΙΟ 9 Ταυτόχρονος προγραμματισμός και νήματα Σύνοψη Σε αυτό το κεφάλαιο πραγματευόμαστε τον ταυτόχρονο προγραμματισμό με τη χρήση νημάτων. Η έμφαση είναι στην κατανόηση βασικών λειτουργιών των νημάτων
Διαβάστε περισσότεραΝήµαταστην Java. Συγχρονισµός νηµάτων Επικοινωνία νηµάτων Εκτελέσιµα αντικείµενα Νήµατα δαίµονες Οµάδες νηµάτων. Κατανεµηµένα Συστήµατα 11-1
Νήµαταστην Java Συγχρονισµός νηµάτων Επικοινωνία νηµάτων Εκτελέσιµα αντικείµενα Νήµατα δαίµονες Οµάδες νηµάτων Κατανεµηµένα Συστήµατα 11-1 Νήµαταστην Java γεννηθείσα notify notifyall έτοιµη start εκπνοή
Διαβάστε περισσότεραΕπικοινωνία με μηνύματα. Κατανεμημένα Συστήματα 1
Επικοινωνία με μηνύματα Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Επικοινωνία με ανταλλαγή μηνυμάτων Η επικοινωνία με μηνύματα είναι ο πιο ευέλικτος τρόπος αλληλεπίδρασης σε κατανεμημένα συστήματα πιο
Διαβάστε περισσότεραΤο λειτουργικό σύστημα. Προγραμματισμός II 1
Το λειτουργικό σύστημα Προγραμματισμός II 1 lalis@inf.uth.gr Συστήματα υπολογιστών Ειδικού σκοπού συστήματα για μια συγκεκριμένη εφαρμογή περιορισμένοι υπολογιστικοί / αποθηκευτικοί πόροι δεν τίθεται θέμα
Διαβάστε περισσότεραΚαρακασίδης Αλέξανδρος Καστίδου Γεωργία Παπαφώτη Μαρία Πέτσιος Κων/νος Στέφανος Σαλτέας Καλογεράς Παναγιώτης. Threads in Java ΝΗΜΑΤΑ ΣΤΗ JAVA
Καρακασίδης Αλέξανδρος Καστίδου Γεωργία Παπαφώτη Μαρία Πέτσιος Κων/νος Στέφανος Σαλτέας Καλογεράς Παναγιώτης Threads in Java ΝΗΜΑΤΑ ΣΤΗ JAVA 1. Εισαγωγή Τι είναι Νήµα; Κάθε νήµα εκτέλεσης είναι ουσιαστικά
Διαβάστε περισσότεραΔιάλεξη 9: Αλγόριθμοι Αμοιβαίου Αποκλεισμού με τη χρήση μεταβλητών Ανάγνωσης/Εγγραφής. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι
Διάλεξη 9: Αλγόριθμοι Αμοιβαίου Αποκλεισμού με τη χρήση μεταβλητών Ανάγνωσης/Εγγραφής ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Αλγόριθμος Ψησταριάς (Bakery Algorithm) Αλγόριθμος 2- επεξεργαστών
Διαβάστε περισσότεραΣυστηματικός έλεγχος ορθότητας ταυτόχρονων προγραμμάτων μέσω γράφου καταστάσεων
Συστηματικός έλεγχος ορθότητας ταυτόχρονων προγραμμάτων μέσω γράφου καταστάσεων ΙΙΙ 1 lalis@inf.uth.gr Ιδιότητες προγραμμάτων Ιδιότητα ασφάλειας (safety properties): δεν θα φτάσουμε ποτέ σε μια ανεπιθύμητη
Διαβάστε περισσότεραΕντοπισμός αδιεξόδου. Κατανεμημένα Συστήματα 1
Εντοπισμός αδιεξόδου Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Αδιέξοδο σε κατανεμημένο σύστημα Αδιέξοδο: «κυκλική» και ατέρμονη αναμονή μεταξύ δύο ή περισσοτέρων διεργασιών Το πρόβλημα υφίσταται ήδη σε
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Στην άσκηση αυτή θα υλοποιήσετε μια κλάση RandomVector η οποία διαχειρίζεται ένα τυχαίο διάνυσμα ακεραίων το οποίο μπορεί να έχει οποιοδήποτε
Διαβάστε περισσότεραΟι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι:
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Μια δομή δεδομένων στην πληροφορική, συχνά αναπαριστά οντότητες του φυσικού κόσμου στον υπολογιστή. Για την αναπαράσταση αυτή, δημιουργούμε πρώτα ένα αφηρημένο μοντέλο στο οποίο προσδιορίζονται
Διαβάστε περισσότεραΛειτουργικά Συστήματα. Ενότητα # 2: Διεργασίες και Νήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής
Λειτουργικά Συστήματα Ενότητα # 2: Διεργασίες και Νήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του
Διαβάστε περισσότεραΑντικειμενοστρεφής Προγραμματισμός
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Αντικειμενοστρεφής Προγραμματισμός Ενότητα 13: Ταυτόχρονος Προγραμματισμός Γρηγόρης Τσουμάκας, Επικ. Καθηγητής Άδειες Χρήσης Το παρόν
Διαβάστε περισσότεραΛειτουργικά Συστήματα. Ενότητα # 2: Διεργασίες και Νήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής
Λειτουργικά Συστήματα Ενότητα # 2: Διεργασίες και Νήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του
Διαβάστε περισσότεραΒασικές έννοιες. Κατανεμημένα Συστήματα 1
Βασικές έννοιες Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Ορισμός κατανεμημένου συστήματος Ένα σύστημα από ξεχωριστές ενεργές οντότητες (ονομάζονται «κόμβοι» ή «διεργασίες») που εκτελούνται ταυτόχρονα/ανεξάρτητα
Διαβάστε περισσότεραΔιορθώσεις σελ
Διορθώσεις σελ. 73-74 # Τώρα ο άνθρωπος σκέφτεται έναν αριθμό από 1 έως 1000 Ν = 1000 print Σκέψου έναν αριθμό από το 1 έως το, Ν guesses = 0 found = False first = 1 last = N while not found and guesses
Διαβάστε περισσότεραΒασικές έννοιες. Κατανεμημένα Συστήματα 1
Βασικές έννοιες Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Ορισμός κατανεμημένου συστήματος Ένα σύστημα από ξεχωριστές ενεργές οντότητες (ονομάζονται «κόμβοι» ή «διεργασίες») που εκτελούνται ταυτόχρονα/ανεξάρτητα
Διαβάστε περισσότεραKitchen Doormam. Floor with Tables. Restaurant Floorplan and Operation
ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ Τμήμα Πληροφορικής και Τηλεπικοινωνιών 3η Εργασία - Τμήμα: Αρτίων Αριθμών Μητρώου Κ22: Λειτουργικά Συστήματα Χειμερινό Εξάμηνο 16 Ημερομηνία Ανακοίνωσης: 23/11 Ημερομηνία Υποβολής:
Διαβάστε περισσότεραΟι δομές δεδομένων στοίβα και ουρά
Καθηγητής Πληροφορικής Απαγορεύεται η αναπαραγωγή των σημειώσεων χωρίς αναφορά στην πηγή Βίντεο: https://youtu.be/j8petzztqty Οι δομές δεδομένων στοίβα και ουρά Εισαγωγή Στα πλαίσια του μαθήματος της Ανάπτυξης
Διαβάστε περισσότεραΧώροι Πλειάδων (Tuple Spaces) Ταυτόχρονος Προγραμματισμός 1
Χώροι Πλειάδων (Tuple Spaces) Ταυτόχρονος Προγραμματισμός 1 lalis@inf.uth.gr Tuple space Ένας κοινός χώρος αποθήκευσης δεδομένων / μηνυμάτων, με μορφή πλειάδων (tuples) Παρέχονται ειδικές λειτουργίες για
Διαβάστε περισσότεραΕπικοινωνία αίτησης-απάντησης. Κατανεμημένα Συστήματα 1
Επικοινωνία αίτησης-απάντησης Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Σχήμα επικοινωνίας -reply Μια διεργασία στέλνει μια αίτηση () σε μια άλλη διεργασία, η οποία επεξεργάζεται την αίτηση και στέλνει
Διαβάστε περισσότεραΧώροι Πλειάδων (Tuple Spaces) Ταυτόχρονος Προγραμματισμός 1
Χώροι Πλειάδων (Tuple Spaces) Ταυτόχρονος Προγραμματισμός 1 lalis@inf.uth.gr Tuple space Ένας κοινός χώρος αποθήκευσης δεδομένων / μηνυμάτων, με μορφή πλειάδων (tuples) Παρέχονται ειδικές λειτουργίες για
Διαβάστε περισσότερα2η Εργαστηριακή Άσκηση
2η Εργαστηριακή Άσκηση Στα πλαίσια της παρούσας εργαστηριακής άσκησης καλείστε να προσθέσετε υποστήριξη σημαφόρων (semaphores) στο MINIX. Το υπάρχον σύστημα δεν προσφέρει τη δυνατότητα χρήσης σημαφόρων
Διαβάστε περισσότεραΜεταγλώττιση και σύνδεση πολλαπλών αρχείων κώδικα. Προγραμματισμός II 1
Μεταγλώττιση και σύνδεση πολλαπλών αρχείων κώδικα Προγραμματισμός II 1 lalis@inf.uth.gr Χρήση λογισμικού που ήδη υπάρχει Τα πολύπλοκα συστήματα αναπτύσσονται σταδιακά, «χτίζοντας» πάνω σε υπάρχουσα λειτουργικότητα
Διαβάστε περισσότεραΔιάλεξη 16: Πρόβλημα Συμφωνίας. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι
Διάλεξη 16: Πρόβλημα Συμφωνίας ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Ορισμός του προβλήματος Συμφωνίας Αλγόριθμος Συμφωνίας με Σφάλματα Κατάρρευσης ΕΠΛ432: Κατανεµηµένοι Αλγόριθµοι 1 Πρόβλημα
Διαβάστε περισσότεραΤεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών
ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών Οδηγός Εργαστηρίου:
Διαβάστε περισσότεραΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Χρονοπρογραμματισμός Εργαστηριακές Ασκήσεις
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Χρονοπρογραμματισμός Εργαστηριακές Ασκήσεις Υλικό από: Κ Διαμαντάρας, Λειτουργικά Συστήματα, Τμήμα Πληροφορικής ΤΕΙΘ Σύνθεση Κ.Γ. Μαργαρίτης, Τμήμα Εφαρμοσμένης Πληροφορικής, Πανεπιστήμιο
Διαβάστε περισσότεραΌταν το πρόγραμμα φτάσει σε αυτή την εντολή και ο καταχωρητής PINA έχει την τιμή
5. Εντολή while() Η εντολή while() είναι ίσως η πιο πολυχρησιμοποιούμενη εντολή κατά τη σύνταξη κώδικα σε γλώσσα προγραμματισμού C για μικροελεγκτές. Το κυρίως μέρος του προγράμματος κλείνεται σχεδόν πάντα
Διαβάστε περισσότεραHY-486 Αρχές Κατανεμημένου Υπολογισμού
HY-486 Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο 2016-2017 Πρώτη Προγραμματιστική Εργασία Προθεσμία παράδοσης: Τρίτη 2/5 στις 23:59. 1. Γενική Περιγραφή Στην πρώτη προγραμματιστική εργασία καλείστε
Διαβάστε περισσότεραΠανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων
Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 3. Στοίβες & Ουρές 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 19/10/2017 Ανακεφαλαίωση:
Διαβάστε περισσότεραΕισαγωγή εκτελέσιμου κώδικα σε διεργασίες
0x375 - Thessaloniki Tech Talks Sessions Event 0x2 19 Μαρτίου 2010 Περιεχόμενα 1 Εισαγωγή 2 Η κλήση συστήματος ptrace 3 Νήματα 4 Το πρόγραμμα εισαγωγής κώδικα prez 5 Επίλογος Γιατί; Πολλές φορές θέλουμε
Διαβάστε περισσότερα