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

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

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

Transcript

1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Λειτουργικά Συστήματα Ενότητα 4β: Αθηνά Βακάλη

2 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2

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

4 Πόροι Πόρους ονομάζουμε τα αντικείμενα του λειτουργικού συστήματος τα οποία μπορούν να εκχωρηθούν σε μια διεργασία για να τα χρησιμοποιήσει. Είναι οτιδήποτε μπορεί να χρησιμοποιηθεί από μια μόνο διεργασία οποιαδήποτε χρονική στιγμή. Μπορεί να είναι μια συσκευή υλικού (για παράδειγμα ένας CD-ROM drive) ή κάποια πληροφορία (για παράδειγμα ένα αρχείο στο δίσκο). Ένας υπολογιστής έχει συνήθως πολλούς πόρους. Αν ένας πόρος απαιτείται από παραπάνω από μία διεργασίες μπορεί να συμβεί αδιέξοδο. 4

5 Πόροι στα Λειτουργικά Συστήματα Windows 5

6 Πόροι στα Λειτουργικά Συστήματα FreeBSD 6

7 Αδιέξοδο (Deadlock) Ορισμός 1 Η μόνιμη / επ αόριστον αναμονή ενός συνόλου διεργασιών που είτε συναγωνίζονται για πόρους του συστήματος είτε επικοινωνούν μεταξύ τους. Ορισμός 2 Ένα σύνολο από διεργασίες που δημιουργούν μια κυκλική αλυσίδα όπου κάθε process στη αλυσίδα δε μπορεί να προχωρήσει και περιμένει για κάποιο γεγονός που μπορεί να προκληθεί μόνο από κάποιο άλλο μέλος της αλυσίδας. Σε ένα σύστημα πολυπρογραμματισμού η συνολική απαίτηση πόρων από όλες τις συνεξελισσόμενες ενεργές διεργασίες υπερβαίνει κατά πολύ το συνολικό ποσό των διαθέσιμων πόρων. Όλα τα αδιέξοδα εμπεριέχουν τις συγκρουόμενες ανάγκες για πόρους από δύο ή περισσότερες διεργασίες. Βασικός σκοπός είναι η σχεδίαση συστημάτων όπου το αδιέξοδο δε θα μπορεί να συμβεί. Γενικά δεν υπάρχει αποτελεσματική λύση. 7

8 Πόροι και Διεργασίες Παράδειγμα Παράδειγμα συνεργασίας πόρων και διεργασιών 8

9 Αδιέξοδο Παράδειγμα Παράδειγμα αδιεξόδου 9

10 Παράδειγμα χωρίς αδιέξοδο Παράδειγμα έλλεψης αδιεξόδου 10

11 Κατηγορίες Πόρων Προεκχωρούμενοι πόροι (Preemptable Resources) Μπορούν να απομακρυνθούν από μια διεργασία χωρίς παρενέργειες, πχ η μνήμη. Μη προεκχωρούμενοι πόροι (Nonpreemptable Resources) Προξενούν αποτυχία στη διεργασία όταν απομακρυνθούν, πχ μονάδα του cd-rom. Παραδείγματα πόρων: εκτυπωτές, tape drives, μνήμη, CD - Recorders κλπ 11

12 Απαιτούμενα βήματα για τη χρήση ενός πόρου Αλληλουχία γεγονότων που απαιτούνται για τη χρήση ενός πόρου: Απαίτηση (request). Χρήση. Απελευθέρωση πόρου. Αναμονή αν η απαίτηση δεν ικανοποιηθεί Η αιτούμενη διεργασία αναστέλλεται. Η αιτούμενη διεργασία αποτυγχάνει εμφανίζοντας μήνυμα λάθους. 12

13 Επαναχρησιμοποιήσιμοι Πόροι Χρησιμοποιούνται με ασφάλεια από μια διεργασία σε κάθε χρονική στιγμή και δεν εξαντλούνται από αυτή τη χρήση. Οι διεργασίες αποκτούν πόρους που θα απελευθερώσουν στη συνέχεια ώστε να χρησιμοποιηθούν από άλλες διεργασίες. Τέτοιοι πόροι είναι: επεξεργαστές, I/O κανάλια, κύρια και δευτερεύουσα μνήμη, αρχεία, βάσεις δεδομένων, και σημαφόροι. Το αδιέξοδο προκύπτει όταν μια διεργασία δεσμεύει έναν πόρο και απαιτεί έναν άλλο. 13

14 Παράδειγμα αδιεξόδου (1/2) Παράδειγμα 1 p0 p1 q0 q1 p2 q2 Αδιέξοδο Διεργασία P Βήμα Ενέργεια p0 Request (D) p1 Lock (D) P2 Request (T) p3 Lock (T) p4 Perform function p5 Unlock (D) p6 Unlock (T) Διεργασία Q Βήμα Ενέργεια q0 Request (T) q1 Lock (T) q2 Request (D) q3 Lock (D) q4 Perform function q5 Unlock (T) q6 Unlock (D) Παράδειγμα διεργασιών που ανταγωνίζονται για επαναχρησιμοποιούμενους πόρους 14

15 Παράδειγμα αδιεξόδου (2/2) Παράδειγμα 2 Ο διαθέσιμος χώρος για κατανομή στην κύρια μνήμη είναι 200Kbytes, και πραγματοποιείται η παρακάτω σειρά αιτημάτων: Free 120K P1 Request 80 Kbytes Request 60 Kbytes P2 Request 70 Kbytes Request 80 Kbytes Free 50K Το αδιέξοδο προκύπτει αν και οι δύο διεργασίες προχωρήσουν στο 2ο αίτημά τους. 15

16 Ζωντανό Αδιέξοδο (livelock) Στο livelock οι διεργασίες δεν περιμένουν κάτι (δεν είναι blocked). Οι διεργασίες αλλάζουν την κατάστασή τους ως απάντηση σε άλλες διεργασίες, αλλά χωρίς να κάνουν τίποτα χρήσιμο. Παράδειγμα (από την πραγματική ζωή) Σε ένα πεζοδρόμιο έρχονται αντιμέτωποι δύο άνθρωποι. Και οι δύο μετακινούνται προς μια κατεύθυνση για να περάσει ο άλλος. Επειδή και οι 2 μετακινούνται προς την ίδια κατεύθυνση δεν αλλάζει κάτι. 16

17 Μοντέλα Αδιεξόδων Μοντελοποίηση του προβλήματος Δημιουργείται ένας κατευθυνόμενος γράφος. Κόμβοι του γράφου είναι οι διεργασίες και οι πόροι. Η ακμή P R σημαίνει ότι η διεργασία P περιμένει για τον πόρο R. Η ακμή R P σημαίνει ότι η διεργασία P κατέχει τον πόρο R. Στο σύστημα υπάρχει πιθανότητα deadlock εάν και μόνο εάν ο κατευθυνόμενος γράφος περιέχει ένα κύκλο. Το σύστημα μπορεί να χρησιμοποιεί ένα τέτοιο γράφο και ένα αλγόριθμο ανίχνευσης κύκλων για να ανιχνεύει deadlock. 17

18 Γράφοι εκχώρησης πόρων 18

19 Γράφοι εκχώρησης πόρων Παραδείγματα (1/2) Παραδείγματα γραφημάτων ανάθεσης πόρων 19

20 Γράφοι εκχώρησης πόρων Παραδείγματα (2/2) Μπορεί να συμβεί αδιέξοδο; Όχι, γιατί δε δημιουργείται κύκλος. 20

21 Γράφοι εκχώρησης πόρου με αδιέξοδο (Παράδειγμα) Υπάρχουν δύο κύκλοι: Πιθανό αδιέξοδο! 21

22 Γράφοι εκχώρησης πόρου με κύκλο, χωρίς αδιέξοδο (Παράδειγμα) Αν ο γράφος δεν περιέχει κύκλους: δεν υπάρχει αδιέξοδο. Αν ο γράφος περιέχει ένα κύκλο: Αν υπάρχει μόνο ένα στιγμιότυπο ανά τύπο πόρου, τότε υπάρχει αδιέξοδο. Αν υπάρχουν αρκετά στιγμιότυπα ανά τύπο πόρου, τότε υπάρχει πιθανότητα να συμβεί αδιέξοδο. 22

23 Ασκήσεις (1/5) Άσκηση 1 Να σχεδιαστεί ένας γράφος εκχώρησης πόρων για τα παρακάτω: Η διεργασία P1 απαιτεί τον πόρο R1 Η διεργασία P2 απαιτεί τον πόρο R3 Ο πόρος R1 εκχωρείται στη διεργασία P2 Ο πόρος R2 εκχωρείται στη διεργασία P1 Ο πόρος R3 εκχωρείται στη διεργασία P3 Υπάρχει αδιέξοδο; 23

24 Ασκήσεις (2/5) Άσκηση 2 Ένα σύστημα αποτελείται από 4 διεργασίες, (p1, p2, p3, p4), και 3 τύπους από σειριακά επαναχρησιμοποιούμενους πόρους, (R1, R2, R3). Ο αριθμός των μονάδων των πόρων είναι E=<3,2,2>. Η διεργασία p1 κρατά 1 μονάδα του R1 και απαιτεί 1 μονάδα του R2. Η διεργασία p2 κρατά 2 μονάδες του R2 και απαιτεί 1 μονάδα καθενός από τους R1 και R3. Η διεργασία p3 κρατά 1 μονάδα του R1 και απαιτεί 1 μονάδα του R2. Η διεργασία p4 κρατά 2 μονάδες του R3 και απαιτεί 1 μονάδα του R1. Να σχεδιάσετε το γράφημα εκχώρησης πόρων που αναπαριστά τη ν κατάσταση του συστήματος. Υπάρχουν διεργασίες που βρίσκονται σε αδιέξοδο στην κατάσταση αυτή; 24

25 Ασκήσεις (3/5) Άσκηση 2 (Συνέχεια) Το γράφημα εκχώρησης πόρων είναι ως εξής: Γράφημα εκχώρησης πόρων 25

26 Ασκήσεις (4/5) Άσκηση 2 (Συνέχεια) Δημιουργούνται τουλάχιστον τρεις κύκλοι. 26

27 Ασκήσεις (5/5) Άσκηση 3 Ένα σύστημα διαθέτει 6 όμοια tape drives και n σε πλήθος διεργασίες που ανταγωνίζονται για τη χρήση τους. Κάθε διεργασία μπορεί να απαιτήσει 2 tape drives. Για ποια τιμή του n το σύστημα είναι απαλλαγμένο από αδιέξοδα; Άσκηση 3 Υποθέστε ένα σύστημα με P διεργασίες και R όμοιους επαναχρησιμοποιήσιμους πόρους. Αν κάθε διεργασία μπορεί να απαιτήσει κατά μέγιστο 2 μονάδες πόρων, να αποδείξετε ότι δεν μπορεί να υπάρξει αδιέξοδο μόνον όταν ισχύει η συνθήκη P<=R-1. 27

28 Αναγκαίες συνθήκες αδιεξόδου Το αδιέξοδο συμβαίνει όταν ισχύουν όλα τα παρακάτω (Συνθήκες Αδιεξόδου): Αμοιβαίος αποκλεισμός (mutual exclusion): Οι εκχωρούμενοι πόροι είναι στην αποκλειστική κυριότητα της διεργασίας. Κάθε πόρος εκχωρείται σε μία διεργασία ή είναι διαθέσιμος. Κατοχή και αναμονή (hold & wait): Η διεργασία μπορεί να δεσμεύει έναν πόρο ενώ περιμένει έναν άλλο Μη προεκχώρηση (No preemption): Κανένας πόρος δεν μπορεί να αποσπασθεί δια της βίας από τη διεργασία που την κατέχει Κυκλική αναμονή (circular wait): Ύπαρξη μιας κλειστής αλυσίδας διεργασιών 2 ή περισσοτέρων διεργασιών. Κάθε μία αναμένει ένα πόρο που κατέχεται από το επόμενο μέλος της αλυσίδας. 28

29 Χειρισμών Αδιεξόδων Αποτροπή (Prevent): Εφαρμογή πολιτικής που αποτρέπει μια από τις 4 συνθήκες Αποφυγή (Avoid): Δυναμικές επιλογές με βάση την τρέχουσα κατάσταση ανάθεσης πόρων Εντοπισμός (Detect): Εντοπισμός του αδιεξόδου και ενέργειες για την ανάκαμψη του συστήματος Χειροκίνητη μεσολάβηση: Ο χειριστής κάνει επανεκκίνηση του συστήματος, αν φαίνεται υπερβολικά αργό. 29

30 Αποτροπή Αμοιβαίος Αποκλεισμός Μόνο μια διεργασία τη φορά μπορεί να χρησιμοποιεί ένα πόρο: Μη διαμοιραζόμενοι πόροι: εκτυπωτής - δε μπορεί να διαμοιράζεται ταυτόχρονα σε πολλές διεργασίες. Διαμοιραζόμενοι πόροι: αρχεία για ανάγνωση - επιτρέπεται η πολλαπλή πρόσβαση σε ένα αρχείο για ανάγνωση μόνο. 30

31 Αποτροπή Κατοχή και Αναμονή (Hold-and-wait) Μια διεργασία μπορεί να κατέχει πόρους καθώς αναμένει την εκχώρηση κάποιων άλλων πόρων. Περιπτώσεις Μια διεργασία απαιτεί όλους τους πόρους πριν ξεκινήσει (άρα δεν θα περιμένει ποτέ στη συνέχεια). Μια διεργασία απαιτεί όλους τους πόρους όταν δεν διαθέτει κανέναν. Προβλήματα Δεν είναι γνωστές οι απαιτήσεις πόρων κατά την έναρξη της διεργασίας. Παρατεταμένη στέρηση. Δεσμεύονται πόροι που θα μπορούσαν να χρησιμοποιηθούν από άλλες διεργασίες. 31

32 Αποτροπή Μη προεκχώρηση (No preemption) (1/2) Αν μια διεργασία που δεσμεύει συγκεκριμένους πόρους αρνείται μια επιπλέον απαίτηση τότε η διεργασία πρέπει να αποδεσμεύσει τους αρχικούς πόρους. Αν μια διεργασία απαιτήσει έναν πόρο που δεσμεύεται από κάποια άλλη διεργασία, το Λειτουργικό Σύστημα θα μπορεί να προεκχωρήσει την 2η διεργασία και να απαιτήσει να απελευθερώσει τους πόρους που κατέχει. 32

33 Αποτροπή Μη προεκχώρηση (No preemption) (2/2) Εφαρμόζεται σε πόρους η κατάσταση των οποίων μπορεί να αποθηκευθεί και αργότερα να γίνει επαναφορά, όπως: Καταχωρητές της CPU και χώρος μνήμης. Δεν είναι μια βιώσιμη επιλογή για την πλειονότητα των πόρων. Παράδειγμα Η διακοπή μιας εγγραφής CD δημιουργεί ένα σημαντικό κόστος: Προφανής λύση. Ο οδηγός συσκευής του CD-R απαγορεύει μια δεύτερη λειτουργία open(). 33

34 Αποτροπή Κυκλική Αναμονή (1/2) Πρέπει να υπάρχει μια κυκλική αλυσίδα με δύο ή περισσότερες διεργασίες. Κάθε μια διεργασία περιμένει έναν πόρο που κατέχεται από άλλη διεργασία της αλυσίδας. Προλαμβάνεται με τον ορισμό μια γραμμικής διάταξης των πόρων. 34

35 Αποτροπή Κυκλική Αναμονή (2/2) Παράδειγμα Έστω ότι ο πόρος Ri προηγείται στη σειρά του Rj όπου i<j. Θεωρούμε ότι δύο διεργασίες Α και Β βρίσκονται σε κατάσταση αδιεξόδου επειδή η Α απέκτησε την Ri και ζήτησε την Rj και η Β κατέχει την Rj και ζητάει την Ri. Αυτό είναι αδύνατο καθώς θα σήμαινε ότι i<j και j<i. 35

36 Κυκλική Αναμονή Παράδειγμα Παράδειγμα με κυκλική αναμονή 36

37 Χωρίς Κυκλική Αναμονή Παράδειγμα Παράδειγμα χωρίς κυκλική αναμονή 37

38 Πρόληψη Κυκλικής Αναμονής Παράδειγμα Παράδειγμα πρόληψης κυκλικής αναμονής 38

39 Αποφυγή Αδιεξόδου (1/4) Οι πόροι εκχωρούνται με τρόπο που εγγυάται ότι δε θα βρεθεί ποτέ σημείο στο οποίο θα συμβεί αδιέξοδο Η αποφυγή του αδιεξόδου επιτρέπει τις τρεις απαραίτητες συνθήκες, αλλά κάνει διακριτικές επιλογές ώστε να εξασφαλιστεί ότι δε θα προκύψει ποτέ αδιέξοδο. Έτσι επιτρέπεται μεγαλύτερος συγχρονισμός σε σχέση με την πρόληψη. Απαιτείται γνώση των μελλοντικών απαιτήσεων της διεργασίας. Προϋποθέτει ότι το σύστημα έχει κάποια πρόσθετη και εκ των προτέρων διαθέσιμη πληροφόρηση. 39

40 Αποφυγή Αδιεξόδου (2/4) Λαμβάνεται δυναμικά μια απόφαση σχετικά με το αν η ικανοποίηση μιας απαίτησης, σε σχέση με την τρέχουσα εκχώρηση πόρων, θα οδηγήσει σε αδιέξοδο, που βασίζεται σε: Στο συνολικό ποσό των διαθέσιμων πόρων. Στους τρέχοντες διαθέσιμους πόρους. Στις απαιτήσεις πόρων εκ μέρους των διεργασιών. Στην πρόσφατη εκχώρηση πόρων στις διεργασίες. 40

41 Αποφυγή Αδιεξόδου (3/4) Το απλούστερο και πλέον χρήσιμο μοντέλο απαιτεί ότι κάθε διεργασία δηλώνει το μέγιστο πλήθος των πόρων κάθε τύπου που είναι πιθανόν να χρειαστεί. Ο αλγόριθμος αποφυγής αδιεξόδου εξετάζει δυναμικά την κατάσταση ανάθεσης πόρων για να εξασφαλίσει ότι δεν μπορεί να προκύψει κατάσταση κυκλικής αναμονής. Η κατάσταση ανάθεσης πόρων ορίζεται από το πλήθος των διαθέσιμων και εκχωρούμενων πόρων και από το μέγιστο πλήθος των απαιτήσεων εκ μέρους των διεργασιών. 41

42 Αποφυγή Αδιεξόδου (4/4) Προσεγγίσεις αποφυγής αδιεξόδου Process Initiation Denial Μια διεργασία δε ξεκινά αν οι απαιτήσεις της μπορούν να οδηγήσουν σε αδιέξοδο, δηλαδή αν οι απαιτήσεις της διεργασίας και οι μέγιστες απαιτήσεις όλων των διεργασιών ξεπερνούν το συνολικό αριθμό των πόρων. Resource Allocation Denial (Αλγόριθμος του τραπεζίτη) Δεν ικανοποιείται μια αυξημένη απαίτηση για τη χρήση ενός πόρου από μια διεργασία αν αυτή η εκχώρηση του πόρου μπορεί να οδηγήσει σε αδιέξοδο. Προβλήματα Μικρή χρήση πόρων. Μειωμένη ρυθμοαπόδοση (throughput) του συστήματος. 42

43 Αλγόριθμος του τραπεζίτη (Dijkstra 1956) Είναι γνωστός και ως άρνηση ανάθεσης πόρων Δεν επιτρέπει την ικανοποίηση αυξημένων απαιτήσεων για πόρους σε μια διεργασία αν αυτή η εκχώρηση πόρων μπορεί να οδηγήσει σε αδιέξοδο. Κατάσταση του συστήματος: είναι η τρέχουσα ανάθεση πόρων στις διεργασίες. Ασφαλής κατάσταση: υπάρχει μια τουλάχιστον ακολουθία εκτέλεσης των διεργασιών που μπορεί να εκτελεστεί μέχρι το τέλος (δηλαδή δεν οδηγεί σε αδιέξοδο). Μη ασφαλής κατάσταση: είναι η κατάσταση που δεν είναι ασφαλής 43

44 Ασφαλής Κατάσταση (1/2) Όταν μια διεργασία απαιτεί ένα διαθέσιμο πόρο, το σύστημα πρέπει να αποφασίσει αν η άμεση ανάθεση του πόρου θα το διατηρήσει σε ασφαλή κατάσταση. Το σύστημα είναι σε ασφαλή κατάσταση αν υπάρχει μια ασφαλής ακολουθία για όλες τις διεργασίες. Η ακολουθία <P 1, P 2,, P n > είναι ασφαλής αν για κάθε P i, οι πόροι που η P i μπορεί ακόμη να απαιτήσει μπορούν να ικανοποιηθούν από τους τρέχοντες διαθέσιμους πόρους συν τους πόρους που δεσμεύονται από όλες τις διεργασίες P j, με j < i. 44

45 Ασφαλής Κατάσταση (2/2) Αν οι ανάγκες σε πόρους της P i δεν είναι άμεσα διαθέσιμοι, τότε η P i μπορεί να περιμένει μέχρις ότου να τελειώσουν όλες οι P j. Όταν τελειώνει η P j η P i μπορεί να αποκτήσει τους πόρους που χρειάζεται, να εκτελεστεί, να επιστρέψει τους πόρους που της ανατέθηκαν και να τερματιστεί. Όταν τερματίσει η P i, η P i+1 μπορεί να αποκτήσει τους πόρους που χρειάζεται κ.ο.κ. 45

46 Βασικά Γεγονότα (1/2) Αν το σύστημα είναι σε ασφαλή κατάσταση δεν υπάρχει αδιέξοδο. Αν το σύστημα δεν είναι σε ασφαλή κατάσταση υπάρχει πιθανότητα αδιεξόδου. Αποφυγή αδιεξόδου: εξασφάλιση ότι το σύστημα δε θα εισέλθει ποτέ σε μη ασφαλή κατάσταση. 46

47 Βασικά Γεγονότα (2/2) Ασφαλή κατάσταση, Μη ασφαλή, Αδιέξοδο 47

48 Παραδοχές Πολλαπλά στιγμιότυπα των πόρων. Κάθε διεργασία πρέπει εκ των προτέρων να διεκδικεί τη μέγιστη χρήση των πόρων. Όταν μια διεργασία απαιτεί έναν πόρο ίσως χρειαστεί να περιμένει. Όταν μια διεργασία λάβει όλους τους πόρους πρέπει να τους επιστρέψει σε πεπερασμένο χρονικό διάστημα. Η μέγιστη απαίτηση για πόρους πρέπει να δηλώνεται εκ των προτέρων. Οι σημαντικές διεργασίες πρέπει να είναι ανεξάρτητες και δεν υπόκεινται σε απαιτήσεις συγχρονισμού. Πρέπει να υπάρχει ένας σταθερός αριθμός πόρων προς ανάθεση. 48

49 Αλγόριθμος του Τραπεζίτη Δομές Δεδομένων (1/2) n = το πλήθος των διεργασιών. m = το πλήθος τύπων πόρων. Available: Διάνυσμα μήκους m. Αν available [j ] = k, υπάρχουν k στιγμιότυπα του τύπου πόρου R j διαθέσιμα. Claim: n x m πίνακας. Αν Claim [i,j ] = k, τότε η διεργασία P i μπορεί να απαιτήσει κατά μέγιστο k στιγμιότυπα του τύπου πόρου R j. 49

50 Αλγόριθμος του Τραπεζίτη Δομές Δεδομένων (2/2) Allocation: n x m πίνακας. Αν Allocation[i, j ] = k τότε στη διεργασία P i εκχωρούνται k στιγμιότυπα του πόρου R j. Need: n x m πίνακας. Αν Need[i, j ] = k, τότε η διεργασία P i μπορεί να χρειαστεί k επιπλέον στιγμιότυπα του πόρου R j για να ολοκληρωθεί. Need [i,j] = Claim[i,j] Allocation [i,j] 50

51 Καθορισμούς μιας ασφαλούς κατάστασης (Παράδειγμα) (1/3) Υπάρχουν 3 τύποι πόρων με πλήθος: R(1) = 9, R(2) = 3, R(3) = 6 Είναι η παρακάτω κατάσταση ασφαλής; Πίνακας απαιτήσεων Πίνακας ανάθεσης Συνολικά R1 R2 R3 P P P P R1 R2 R R1 R2 R Διαθέσιμα

52 Καθορισμούς μιας ασφαλούς κατάστασης (Παράδειγμα) (2/3) Πίνακας απαιτήσεων Πίνακας ανάθεσης Συνολικά R1 R2 R3 P P P P R1 R2 R R1 R2 R Διαθέσιμα Πίνακας απαιτήσεων R1 R2 R3 P P P P Πίνακας ανάθεσης R1 R2 R Συνολικά R1 R2 R Διαθέσιμα

53 Καθορισμούς μιας ασφαλούς κατάστασης (Παράδειγμα) (3/3) Πίνακας απαιτήσεων Πίνακας ανάθεσης Συνολικά R1 R2 R3 P P P P R1 R2 R R1 R2 R Διαθέσιμα Πίνακας απαιτήσεων R1 R2 R3 P P P P Πίνακας ανάθεσης R1 R2 R Συνολικά R1 R2 R Διαθέσιμα H κατάσταση είναι ασφαλή: P2 -> P1 -> P3 -> P4. 53

54 Παράδειγμα (1/13) Μεγαλύτερη αξίωση (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Συνολικά: <8, 5, 9, 7> 54

55 Παράδειγμα (2/13) Μεγαλύτερη αξίωση (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Δεσμευμένα = <7, 3, 7, 5> Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Σύνολο Συνολικά: <8, 5, 9, 7> 55

56 Παράδειγμα (3/13) Μεγαλύτερη αξίωση (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Δεσμευμένα = <7, 3, 7, 5> Διαθέσιμες μονάδες: Συνολικά - Δεσμευμένες Διαθέσιμα = <8-7, 5-3, 9-7, 7-5> = <1, 2, 2, 2> Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Σύνολο Συνολικά: <8, 5, 9, 7> 56

57 Παράδειγμα (4/13) Maximum claim (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Δεσμευμένα = <7, 3, 7, 5> Διαθέσιμα = <8-7, 5-3, 9-7, 7-5> = <1, 2, 2, 2> Can p0 s maxc be met? maxc[0,0]-alloc [0,0] = 3-2 = 1<=1 = avail[0] maxc[0,1]-alloc [0,1] = 2-0 = 2<=2 = avail[1] maxc[0,2]-alloc [0,2] = 1-1 = 0<=2 = avail[2] maxc[0,3]-alloc [0,3] = 4-1 = 3<=2 = avail[3] Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Σύνολο Process p0 Fails on avail[3]. Συνολικά: <8, 5, 9, 7> 57

58 Παράδειγμα (5/13) Maximum claim (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Δεσμευμένα = <7, 3, 7, 5> Διαθέσιμα = <8-7, 5-3, 9-7, 7-5> = <1, 2, 2, 2> Can p1 s maxc be met? maxc[1,0]-alloc [1,0] = 0-0 = 0<=1 = avail[0] maxc[1,1]-alloc [1,1] = 2-1 = 1<=2 = avail[1] maxc[1,2]-alloc [1,2] = 5-2 = 3<=2 = avail[2] maxc[1,3]-alloc [1,3] = 2-1 = 1<=2 = avail[3] Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Σύνολο Process p1 Fails on avail[2]. Συνολικά: <8, 5, 9, 7> 58

59 Παράδειγμα (6/13) Maximum claim (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Δεσμευμένα = <7, 3, 7, 5> Διαθέσιμα = <8-7, 5-3, 9-7, 7-5> = <1, 2, 2, 2> Can p2 s maxc be met? maxc[2,0]-alloc [2,0] = 5-4 = 1<=1 = avail[0] maxc[2,1]-alloc [2,1] = 1-0 = 1<=2 = avail[1] maxc[2,2]-alloc [2,2] = 0-0 = 0<=2 = avail[2] maxc[2,3]-alloc [2,3] = 5-3 = 2<=2 = avail[3] Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Σύνολο Συνολικά: <8, 5, 9, 7> 59

60 Παράδειγμα (7/13) Maximum claim (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Δεσμευμένα = <7, 3, 7, 5> Διαθέσιμα = <8-7, 5-3, 9-7, 7-5> = <1, 2, 2, 2> Can p2 s maxc be met? maxc[2,0]-alloc [2,0] = 5-4 = 1<=1 = avail[0] maxc[2,1]-alloc [2,1] = 1-0 = 1<=2 = avail[1] maxc[2,2]-alloc [2,2] = 0-0 = 0<=2 = avail[2] maxc[2,3]-alloc [2,3] = 5-3 = 2<=2 = avail[3] Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Σύνολο Συνολικά: <8, 5, 9, 7> Yes. Redo avail/update alloc. avail[0] = avail[0]+alloc [2,0] = 1+4 = 5 avail[1] = avail[1]+alloc [2,1] = 2+0 = 2 avail[2] = avail[2]+alloc [2,2] = 2+0 = 2 avail[3] = avail[3]+alloc [2,3] = 2+3 = 5 60

61 Παράδειγμα (8/13) Maximum claim (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Δεσμευμένα = <3, 3, 7, 2> Διαθέσιμα = <8-3, 5-3, 9-7, 7-2> = <5, 2, 2, 5> Can anyone s maxc be met? maxc[4,0]-alloc [4,0] = 3-1 = 2 maxc[4,1]-alloc [4,1] = 0-0 = 0 maxc[4,2]-alloc [4,2] = 3-3 = 0 maxc[4,3]-alloc [4,3] = 3-0 = 3 5 = avail[0] 2 = avail[1] 2 = avail[2] 5 = avail[3] Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Σύνολο Συνολικά: <8, 5, 9, 7> 61

62 Παράδειγμα (9/13) Maximum claim (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Δεσμευμένα = <3, 3, 7, 2> Διαθέσιμα = <8-3, 5-3, 9-7, 7-2> = <5, 2, 2, 5> Can anyone s maxc be met? maxc[4,0]-alloc [4,0] = 3-1 = 2 maxc[4,1]-alloc [4,1] = 0-0 = 0 maxc[4,2]-alloc [4,2] = 3-3 = 0 maxc[4,3]-alloc [4,3] = 3-0 = 3 5 = avail[0] 2 = avail[1] 2 = avail[2] 5 = avail[3] Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Σύνολο Συνολικά: <8, 5, 9, 7> P 4 can exercise max claim avail[0] = avail[0]+alloc [4,0] = 5+1 = 6 avail[1] = avail[1]+alloc [4,1] = 2+0 = 2 avail[2] = avail[2]+alloc [4,2] = 2+3 = 5 avail[3] = avail[3]+alloc [4,3] = 5+0 = 5 62

63 Παράδειγμα (10/13) Maximum claim (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Δεσμευμένα = <2, 3, 4, 2> Διαθέσιμα = <8-2, 5-3, 9-4, 7-2> = <6, 2, 5, 5> Can anyone s maxc be met? Ναι. Όλοι μπορούν. Επέλεξε p0. Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Σύνολο Συνολικά: <8, 5, 9, 7> 63

64 Παράδειγμα (11/13) Maximum claim (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Δεσμευμένα = <0, 3, 3, 1> Διαθέσιμα = <8-0, 5-3, 9-3, 7-1> = <8, 2, 6, 6> Can anyone s maxc be met? Ναι. Όλοι μπορούν. Επέλεξε p1. Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Σύνολο Συνολικά: <8, 5, 9, 7> 64

65 Παράδειγμα (12/13) Maximum claim (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Δεσμευμένα = <0, 2, 1, 0> Διαθέσιμα = <8-0, 5-2, 9-1, 7-0> = <8, 3, 8, 7> Can anyone s maxc be met? Ναι. Επέλεξε p3. Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Σύνολο Συνολικά: <8, 5, 9, 7> 65

66 Παράδειγμα (13/13) Περίληψη Maximum claim (Maximum claim) Διεργασία R0 R1 R2 R3 p p p p p Alloc Now Zeroed. Ασφαλή κατάσταση με ολοκλήρωση όλων των διεργασιών. Halt Algorithm με επιτυχία. Σειρά διεργασιών των: p2, p4, p0, p1, p3. Ασφαλή εκτέλεση. All Maximum Claims Satisfied in Some Order. Δεν υπάρχει αδιέξοδο ή μηασφαλή κατάσταση. Δεσμευμένοι πόροι (Allocated resources) Διεργασία R0 R1 R2 R3 p p p p p Σύνολο

67 Ανίχνευση Αδιεξόδου (1/2) Ο αλγόριθμος του τραπεζίτη είναι απαισιόδοξος Πάντοτε υποθέτει ότι μια διεργασία δεν θα απελευθερώσει τους πόρους που κατέχει μέχρι να αποκτήσει όλους τους πόρους που χρειάζεται. Συνέπειες Μικρό ποσό παραλληλίας. Πολύπλοκοι έλεγχοι για κάθε απαίτηση εκχώρησης πόρου (πολυπλοκότητα O(n 2 )). Οι στρατηγικές ανίχνευσης αδιεξόδου δεν οριοθετούν την πρόσβαση σε πόρους και δεν περιορίζουν τις ενέργειες των διεργασιών. Οι απαιτούμενοι πόροι εκχωρούνται στις διεργασίες, όποτε αυτό είναι δυνατό. 67

68 Ανίχνευση Αδιεξόδου (2/2) Περιοδικά το Λειτουργικό Σύστημα εφαρμόζει έναν αλγόριθμο ανίχνευσης αδιεξόδου που δίνει τη δυνατότητα να εντοπισθεί η συνθήκη της κυκλικής αναμονής. Ο αλγόριθμος μπορεί να εκτελέιται με βάση: Πόσο συχνά συνηθίζεται να συμβαίνει αδιέξοδο. Σε κάθε αίτηση πόρου. Αν ο αλγόριθμος καλείται αυθαίρετα δεν εξασφαλίζεται η ανίχνευση της διεργασίας που προκαλεί το αδιέξοδο 68

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

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

71 Συνδυασμένη προσέγγιση ανίχνευσης αδιεξόδου Ο συνδυασμός των τριών προσεγγίσεων: πρόληψη, αποφυγή, ανίχνευση, επιτρέπει τη χρήση της βέλτιστης προσέγγισης για κάθε πόρο του συστήματος. Μια κατά το δυνατόν βέλτιστη προσέγγιση περιλαμβάνει: Διαμοίραση των πόρων σε ιεραρχικά διατεταγμένες κλάσεις. Χρήση της στρατηγικής γραμμικής διάταξης για την αποτροπή της κυκλικής αναμονής. Χρήση των πλέον κατάλληλων τεχνικών για τη διαχείριση αδιεξόδων μέσα σε κάθε κλάση. 71

72 Συνδυασμένη Προσέγγιση (Παράδειγμα) (1/2) Χώρος εναλλαγής: Τμήματα μνήμης στο δίσκο που χρησιμοποιούνται κατά την εναλλαγή (swapping) των διεργασιών. Αποτροπή αδιεξόδου απαιτώντας ότι όλες οι απαιτήσεις πόρων θα ικανοποιηθούν την ίδια στιγμή, όπως στην περίπτωση της στρατηγικής για κατοχή και αναμονή. Η αποφυγή του αδιεξόδου θα μπορούσε επίσης να χρησιμοποιηθεί. Πόροι διεργασίας: Οι συσκευές που ανατίθενται. Η αποφυγή είναι εφαρμόσιμη καθώς είναι λογική απαίτηση οι διεργασίες να δηλώνουν εκ των προτέρων τους πόρους που θα χρειαστούν. Η πρόληψη με την έννοια της διάταξης των πόρων είναι επίσης εφικτή. 72

73 Συνδυασμένη Προσέγγιση (Παράδειγμα) (2/2) Κύρια μνήμη: Ανατίθεται στις διεργασίες με τη μορφή σελίδων (pages) ή τμημάτων (segments). Η πρόληψη μέσω της προ-εκχώρησης είναι η πλέον κατάλληλη τακτική. Όταν μια διεργασία προ-εκχωρείται εναλάσσεται στο δίσκο και ελευθερώνει τη μνήμη για να επιλύσει το αδιέξοδο. Εσωτερικοί πόροι: Για παράδειγμα κανάλια Εισόδου/Εξόδου. Η αποτροπή με την έννοια της διάταξης πόρων μπορεί να εφαρμοστεί. 73

74 Άσκηση (1/2) Θεωρείστε ένα σύστημα με 4 διεργασίες (Α, Β, C, D) και 5 επαναχρησιμοποιήσιμους πόρους (R0, R1, R2, R3, R4). Η τρέχουσα ανάθεση πόρων (τρέχουσα κατάσταση) στις διεργασίες δίνεται από τον παρακάτω πίνακα: Εκχώρηση R0 R1 R2 R3 R4 A B C D

75 Άσκηση (2/2) Θεωρείστε επίσης ότι οι μέγιστες απαιτήσεις των διεργασιών δίνονται από τον παρακάτω πίνακα: Μέγιστη απαίτηση R0 R1 R2 R3 R4 A B C D Οι διαθέσιμοι προς εκχώρηση πόροι είναι: 0 0 x 1 1 Να βρεθεί η μικρότερη τιμή x για την οποία το σύστημα θα οδηγηθεί σε ασφαλή κατάσταση. 75

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

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

78 Το πρόβλημα των συνδαιτημόνων φιλοσόφων Λύση (1/2) 78

79 Το πρόβλημα των συνδαιτημόνων φιλοσόφων Λύση (2/2) 79

80 Το πρόβλημα των συνδαιτημόνων φιλοσόφων Πρώτη Λύση Προφανής (1/2) 80

81 Το πρόβλημα των συνδαιτημόνων φιλοσόφων Πρώτη Λύση Προφανής (2/2) Προσθήκη ενός ακόμη πηρουνιού. Μέγιστος αριθμός 4 φιλοσόφων στο τραπέζι (κυκλική αναμονή). Να εκτελείται διαφορετική αλληλουχία ενεργειών για τους φιλοσόφους με άρτιο και περιττό αύξοντα αριθμό, δηλαδή δημιουργία δύο ομάδων φιλοσόφων. Η μία ομάδα (περιττός α/α) θα αποκτά πρώτα το δεξιό και μετά το αριστερό πηρούνι και η άλλη ομάδα (άρτιος α/α) πρώτα το αριστερό και μετά το δεξιό πηρούνι. Ένας φιλόσοφος επιτρέπεται να αποκτήσει τα πηρούνια μόνον όταν και τα δύο είναι διαθέσιμα διαφορετικά ελευθερώνει το πιρούνι που πιθανώς να κατέχει (κρίσιμο τμήμα) - (κατοχή και αναμονή). Σχεδιασμός του συστήματος έτσι ώστε ένας φιλόσοφος να κλέψει ένα πηρούνι που δεν είναι γειτονικό του. Αλγόριθμος Lehmann-Rabin (non deterministic). 81

82 Το πρόβλημα των συνδαιτημόνων φιλοσόφων Δεύτερη Λύση 82

83 Πόροι Προσεγγίσεις και Πολιτικές (1/2) Προσέγγιση Πολιτική ανάθεσης πόρων Διαφορετικά σχήματα Πλεονεκτήματα Μειονεκτήματα Αποτροπή Συντηρητική υπο-παραχωρεί πόρους Απαιτεί όλους τους πόρους με τη μία. Προ-εκχώρηση. Αποτελεσματική για διεργασίες που πραγματοποιούν μια δραστηριότητα. Δεν είναι απαραίτητη η προεκχώρηση. Βολική στην περίπτωση πόρων που η κατάσταση τους μπορεί να αποθηκεύεται και εύκολα να ανακτάται. Μη αποδοτική. Καθυστερεί την έναρξη των διεργασιών. Μελλοντικές απαιτήσεις σε πόρους πρέπει να είναι γνωστές για τις διεργασίες. Προ-εκχωρεί περισσότερο συχνά από ότι χρειάζεται. Διάταξη πόρων. Επιβάλλεται μέσω ελέγχων κατά τη μεταγλώττιση. Δεν απαιτεί υπολογισμούς καθώς το πρόβλημα επιλύεται κατά το σχεδιασμό του συστήματος. Δεν επιτρέπει κλιμακούμενες αιτήσεις πόρων. Τίτλος Μαθήματος Τμήμα

84 Πόροι Προσεγγίσεις και Πολιτικές (2/2) Προσέγγιση Πολιτική ανάθεσης πόρων Διαφορετικά σχήματα Πλεονεκτήματα Μειονεκτήματα Αποφυγή Ενδιάμεση λύση ανάμεσα στον εντοπισμό και την πρόληψη. Επιδιώκει να βρει έστω ένα ασφαλές μονοπάτι. Δεν απαιτείται προ-εκχώρηση. Μελλοντικές απαιτήσεις πόρων πρέπει να είναι γνωστές στο Λειτουργικό Σύστημα. Διεργασίες μπορούν να αναστέλλονται για μεγάλα διαστήματα. Εντοπισμός Πολύ φιλελεύθερος: οι απαιτούμενοι πόροι ανατίθενται όπου είναι εφικτό. Καλείται περιοδικά για τον έλεγχο αδιεξόδων. Δεν καθυστερείται ποτέ η έναρξη διεργασιών. Διευκολύνει τον απευθείας χειρισμό. Απώλειες λόγω προ-εκχώρησης. Τίτλος Μαθήματος Τμήμα

85 Αναφορές [1]. Stallings William, Operating systems: Internal and Design Principles, Fourth edition, Publishing as Prentice Hall, [2]. A.S.Tanenbaum, "Σύγχρονα Λειτουργικά Συστήματα" Τόμος Α', Εκδόσεις, Παπασωτηρίου. [3]. H.M. Deitel, "Operating Systems", 2nd edition, Addison-Wesley Publishing Company. [3]. W. Stallings, Λειτουργικά Συστήματα Αρχές Σχεδίασης, 6η έκδοση, ΕΚΔΟΣΕΙΣ ΤΖΙΟΛΑ, 2009, Θεσσαλονίκη. [4]. Silberschatz, Galvin, Gagne, Λειτουργικά Συστήματα, ΕΚΔΟΣΕΙΣ ΙΩΝ, 2007, Αθήνα. 85

86 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Τέλος Ενότητας

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

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

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

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

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

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

6. Αδιέξοδο. 1. Ορισμοί είδη πόρων. 3. Συνθήκες αδιεξόδου. 1. Πρόληψη 2. Αποφυγή 3. Ανίχνευση 5. Το πρόβλημα των συνδαιτημόνων φιλοσόφων

6. Αδιέξοδο. 1. Ορισμοί είδη πόρων. 3. Συνθήκες αδιεξόδου. 1. Πρόληψη 2. Αποφυγή 3. Ανίχνευση 5. Το πρόβλημα των συνδαιτημόνων φιλοσόφων 6. Αδιέξοδο 1. Ορισμοί είδη πόρων 2. Γράφοι εκχώρησης πόρων 3. Συνθήκες αδιεξόδου 4. Προσεγγίσεις αδιεξόδου 1. Πρόληψη 2. Αποφυγή 3. Ανίχνευση 5. Το πρόβλημα των συνδαιτημόνων φιλοσόφων ΤΕΙΘ-ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

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

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

Λειτουργικά Συστήματα Η/Υ Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 6 «Αδιέξοδο» Διδάσκων: Δ. Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας 1 Αδιέξοδο 1. Ορισμοί είδη πόρων 2. Γράφοι εκχώρησης πόρων 3. Συνθήκες αδιεξόδου 4. Προσεγγίσεις αδιεξόδου

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

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

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

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Αδιέξοδα Εργαστηριακές Ασκήσεις

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

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

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation)

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation) Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation) Εισαγωγή Μοντέλο συστήματος Χαρακτηρισμός και ορισμός κατάστασης αδιεξόδου Μέθοδοι χειρισμού αδιεξόδων Αποτροπή αδιεξόδου (Deadlock Prevention) Αποφυγή

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

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

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

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

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation)

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation) Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation) Το Πρόβλημα του Αδιεξόδου Ένα σύνολο από διεργασίες σε αναμονή, όπου η κάθε μια κατέχει έναν αριθμό από πόρους και περιμένει να αποκτήσει και έναν

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

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation)

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation) Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation) Για τη δηµιουργία των διαφανειών έχει χρησιµοποιηθεί υλικό από τις διαφάνειες παραδόσεων που βασίζονται στο βιβλίο, Silberschatz, Galvin and Gagne,

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

Συγχρονισµός: Αδιέξοδο & Παρατεταµένη Στέρηση

Συγχρονισµός: Αδιέξοδο & Παρατεταµένη Στέρηση Συγχρονισµός: Αδιέξοδο & Παρατεταµένη Στέρηση Κεφάλαιο 6 Αδιέξοδο Μόνιµη αναµονή ενός συνόλου διεργασιών οι οποίες ανταγωνίζονται για πόρους του συστήµατος ή για να επικοινωνήσουν µεταξύ τους εν υπάρχει

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

ΑΔΙΕΞΟΔΑ. Λειτουργικά Συστήματα Ι. Διδάσκων: Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι

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

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

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

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Αδιέξοδα Βασίλης Σακκάς 22/1/2014 1 Εισαγωγή Πόροι Ένα σύνολο διεργασιών βρίσκεται σε αδιέξοδο (deadlock) αν κάθε διεργασία του συνόλου περιμένει ένα γεγονός που μόνο μια άλλη

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

ΑΔΙΕΞΟΔΑ (Deadlocks) Παράδειγμα 1 Θανάσιμο αγκάλιασμα (deadly embrace)

ΑΔΙΕΞΟΔΑ (Deadlocks) Παράδειγμα 1 Θανάσιμο αγκάλιασμα (deadly embrace) Παράδειγμα 1 Ένα σύστημα με έναν εκτυπωτή και ένα σαρωτή εγγράφων Δύο διεργασίες Ρ1 και Ρ2 Η Ρ1 δεσμεύει τον εκτυπωτή Η Ρ2 δεσμεύει το σαρωτή Η Ρ1 ζητά το σαρωτή και εμποδίζεται Η Ρ2 ζητά τον εκτυπωτή

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΑΔΙΕΞΟΔΑ

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΑΔΙΕΞΟΔΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Διάλεξη 5 ΑΔΙΕΞΟΔΑ Οι διαφάνειες έχουν καθαρά επικουρικό χαρακτήρα στην παρουσίαση των διαλέξεων του μαθήματος. Δεν αντικαθιστούν σε καμία περίπτωση την παρακάτω βιβλιογραφία που

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

Αδιέξοδα (Deadlocks)

Αδιέξοδα (Deadlocks) Αδιέξοδα (Deadlocks) Περίληψη Αδιέξοδα (deadlocks) Τύποι πόρων (preemptable non preemptable) Μοντελοποίηση αδιεξόδων Στρατηγικές Στρουθοκαµηλισµός (ostrich algorithm) Ανίχνευση και αποκατάσταση (detection

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

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

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

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

6. Α ΙΕΞΟ Α Στέφανος Γκρίτζαλης Αναπληρωτής Καθηγητής Κωνσταντίνος Καραφασούλης ιδάσκων (Π 407) 6.1 ΠΟΡΟΙ (1/2) Υπάρχουν δύο τύποι πόρων σε υπολογιστικά συστήµατα: προεκχωρήσιµοι πόροι (preemptable resources):

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Αδιέξοδα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Αδιέξοδα ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Αδιέξοδα Υλικό από: Tanenbaum, Modern Operating Systems,Structured Computer Organization Stallings, Operating Systems: Internals and Design Principles. Silberschatz, Galvin and Gange,

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

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

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

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

09/04/2014 ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι. Μάθηµα: Α ΙΕΞΟ Α. ιδάσκων: Λειτουργικά Συστήµατα Ι Αν. Καθ. Κ. Λαµπρινουδάκης Α ΙΕΞΟ Α

09/04/2014 ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι. Μάθηµα: Α ΙΕΞΟ Α. ιδάσκων: Λειτουργικά Συστήµατα Ι Αν. Καθ. Κ. Λαµπρινουδάκης Α ΙΕΞΟ Α ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθηµα: Λειτουργικά Συστήµατα Ι Α ΙΕΞΟ Α ιδάσκων: Αν. Καθ. Κ. Λαµπρινουδάκης clam@unipi.gr 1 Α ΙΕΞΟ Α 2 1 ΠΟΡΟΙ Υπάρχουν δύο τύποι πόρων σε υπολογιστικά συστήµατα: Προεκτοπίσιµοι

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

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

Λειτουργικά Συστήματα ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Λειτουργικά Συστήματα Ενότητα 5γ: Αθηνά Βακάλη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

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

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

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

Λιβανός Γιώργος Εξάμηνο 2017Β

Λιβανός Γιώργος Εξάμηνο 2017Β Λιβανός Γιώργος Εξάμηνο 2017Β Το Λ.Σ. είναι υπεύθυνο για την κατανομή των πόρων του συστήματος (επεξεργαστές, μνήμη, αποθηκευτικά μέσα και συσκευές εισόδου/εξόδου) στα διάφορα ανταγωνιζόμενα προγράμματα

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

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

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

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

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

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

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

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

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

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Αδιέξοδα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Αδιέξοδα ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Αδιέξοδα Υλικό από: Tanenbaum, Modern Operating Systems,Structured Computer Organization Stallings, Operating Systems: Internals and Design Principles. Silberschatz, Galvin and Gange,

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

Αμοιβαίος αποκλεισμός

Αμοιβαίος αποκλεισμός Αμοιβαίος αποκλεισμός 1. Εισαγωγή 2. Κρίσιμα τμήματα (Critical Sections) 3. Υλοποίηση του αμοιβαίου αποκλεισμού I. Προσεγγίσεις λογισμικού II. Υποστήριξη εκ μέρους του υλικού III. Σηματοφορείς 4. Κλασσικά

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

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

Λειτουργικά Συστήματα ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Λειτουργικά Συστήματα Ενότητα 4α: Σημαφόροι, Πρόβλημα Συνδαιτυμόνων Φιλοσόφων, Αδιέξοδα Αθηνά Βακάλη Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Λειτουργικά Συστήματα Η/Υ Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 7 «Διαχείριση Μνήμης» Διδάσκων: Δ. Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας 1 Κύρια Μνήμη 1. Εισαγωγή 2. Βασική διαχείριση μνήμης 3. Μνήμη και πολυπρογραμματισμός 4. Τμηματοποίηση

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

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

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

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

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

Λειτουργικά Συστήματα Η/Υ Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 5 «Αμοιβαίος Αποκλεισμός» Διδάσκων: Δ Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας 1 Αμοιβαίος Αποκλεισμός 1. Εισαγωγή 2. Κρίσιμα τμήματα (Critical Sections) 3. Υλοποίηση του

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

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

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

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

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

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

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

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

Λειτουργικά Συστήματα (ΗΥ222) Λειτουργικά Συστήματα (ΗΥ222) Διάλεξη 5: Αδιέξοδα Συγχρονισμός στον Πραγματικό Κόσμο Χρειάζεται οποτεδήποτε > 1 χρήστης πόρου Λίγο πολύ οι ίδιες λύσεις με τον πραγματικό κόσμο: κλείδωμα (στo WC), χρονοπρογραμματισμός

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ Θεωρία Υπολογισμού Ενότητα 8: Πεπερασμένα Αυτόματα Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

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

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

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

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

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

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Διαχείριση Κεντρικής Μονάδας Επεξεργασίας (CPU) Βασίλης Σακκάς 4/12/2013 1 Xρονοδρομολόγηση Διεργασιών 1 Η χρονοδρομολόγηση σε ένα Λ/Σ αποφασίζει ποια διεργασία θα χρησιμοποιεί

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Φροντιστήριο 4: Μορφολογική Παραγωγή. Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών

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

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

Θοδωρής Ανδρόνικος Τμήμα Πληροφορικής, Ιόνιο Πανεπιστήμιο

Θοδωρής Ανδρόνικος Τμήμα Πληροφορικής, Ιόνιο Πανεπιστήμιο Θοδωρής Ανδρόνικος Τμήμα Πληροφορικής, Ιόνιο Πανεπιστήμιο Για το μάθημα «Διαχείριση Λειτουργικών Συστημάτων» του ακαδημαϊκού έτους 2015 2016, το προτεινόμενο σύγγραμμα είναι το: Operating Systems: Internals

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

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

Λειτουργικά Συστήματα ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Λειτουργικά Συστήματα Ενότητα 2β: Αθηνά Βακάλη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι Λειτουργικά Συστήματα 1 Λογισμικό του Υπολογιστή Για να λειτουργήσει ένας Η/Υ εκτός από το υλικό του, είναι απαραίτητο και το λογισμικό Το σύνολο των προγραμμάτων που συντονίζουν τις λειτουργίες του υλικού

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

Εισαγωγικές Έννοιες. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο

Εισαγωγικές Έννοιες. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο Εισαγωγικές Έννοιες ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

Κεφάλαιο 3: Λειτουργικά Συστήµατα

Κεφάλαιο 3: Λειτουργικά Συστήµατα Κεφάλαιο 3: Λειτουργικά Συστήµατα B Μέρος Συντονισµός Δραστηριοτήτων Υπολογιστή Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Εισαγωγή Σήµερα θα περιγράψουµε πως ένα λειτουργικό

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

Αστικά υδραυλικά έργα

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

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

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

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

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

Προσπέλαση κοινών πόρων Πρωτόκολλα ελέγχου αμοιβαίου αποκλεισμού

Προσπέλαση κοινών πόρων Πρωτόκολλα ελέγχου αμοιβαίου αποκλεισμού Λειτουργικά Συστήματα Πραγματικού Χρόνου 2006-07 Προσπέλαση κοινών πόρων Πρωτόκολλα ελέγχου αμοιβαίου αποκλεισμού Μ.Στεφανιδάκης Κοινοί πόροι Κοινοί (διαμοιραζόμενοι) πόροι με μία η περισσότερες μονάδες

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

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

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

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

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

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

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

ΔΙΑΧΕΙΡΙΣΗ ΥΔΑΤΙΚΩΝ ΠΟΡΩΝ

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

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

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

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

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

Δρομολόγηση σε σύστημα ενός επεξεργαστή

Δρομολόγηση σε σύστημα ενός επεξεργαστή Δρομολόγηση σε σύστημα ενός επεξεργαστή 1. Εισαγωγή 2. Κριτήρια αποτίμησης της απόδοσης 3. Κριτήρια βελτιστοποίησης 4. Τύποι δρομολόγησης του επεξεργαστή 5. Ο κύκλος καταιγισμού CPU-I/O 6. Πολιτικές δρομολόγησης

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

Διαχείριση Χρόνου & Δίκτυα στη Διοίκηση Έργων. Κηρυττόπουλος Κωνσταντίνος Επ. Καθηγητής ΕΜΠ

Διαχείριση Χρόνου & Δίκτυα στη Διοίκηση Έργων. Κηρυττόπουλος Κωνσταντίνος Επ. Καθηγητής ΕΜΠ Διαχείριση Χρόνου & Δίκτυα στη Διοίκηση Έργων Κηρυττόπουλος Κωνσταντίνος Επ. Καθηγητής ΕΜΠ Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,

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

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

Λειτουργικά Συστήματα Η/Υ Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 9 «Δρομολόγηση Διεργασιών» Διδάσκων: Δ, Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας 1 Δρομολόγηση σε σύστημα ενός επεξεργαστή 1. Εισαγωγή 2. Κριτήρια αποτίμησης της απόδοσης

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

Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES)

Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES) Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES) Εισαγωγή H κεντρική μονάδα επεξεργασίας (ΚΜΕ) και η κύρια μνήμη αποτελούν τα βασικά δομικά στοιχεία ενός υπολογιστικού συστήματος. Η πρώτη εκτελεί εντολές χειρισμού δεδομένων

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

Εφαρμογές Συστημάτων Γεωγραφικών Πληροφοριών

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

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

Λειτουργικά συστήµατα. Λογισμικό Συστήματος 1

Λειτουργικά συστήµατα. Λογισμικό Συστήματος 1 Λειτουργικά συστήµατα Λογισμικό Συστήματος 1 Figure 3.1 Batch processing 0-2 Λογισμικό Συστήματος Figure 3.2 Interactive processing 0-3 Λογισμικό Συστήματος Figure 3.3 Software classification 0-4 Λογισμικό

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

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

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

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

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

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Δημήτρης Πλεξουσάκης

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

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

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

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 1 : Οργάνωση και Αρχιτεκτονική υπολογιστών Φώτης Βαρζιώτης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα Τμήμα Μηχανικών

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

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

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

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

Ιδιοκτησία Αντικειµένου

Ιδιοκτησία Αντικειµένου Software Transactional Memory H STM υποστηρίζει την εκτέλεση δοσοληψιών από τις διεργασίες, οι οποίες περιέχουν λειτουργίες που ο χρήστης θέλει να εκτελέσει στα διαµοιραζόµενα αντικείµενα. H STM εγγυάται

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

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

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

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

Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων Ενότητα 4: Δίκτυα Συστημάτων Αναμονής

Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων Ενότητα 4: Δίκτυα Συστημάτων Αναμονής Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων Ενότητα 4: Δίκτυα Συστημάτων Αναμονής Γαροφαλάκης Ιωάννης Πολυτεχνική Σχολή Τμήμα Μηχ/κών Η/Υ & Πληροφορικής Γιατί δίκτυα συστημάτων αναμονής; Τα απλά συστήματα

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

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων Ι Σύνολο- Περιεχόμενο Μαθήματος

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων Ι Σύνολο- Περιεχόμενο Μαθήματος Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων Ι Σύνολο- Περιεχόμενο Μαθήματος Χιωτίδης Γεώργιος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι. Κεφάλαιο 6ο: Αδιέξοδα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι. Κεφάλαιο 6ο: Αδιέξοδα ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Κεφάλαιο 6ο: Αδιέξοδα 1 3.1 Εισαγωγή Αδιέξοδο = ένα σύνολο από διεργασίες που δημιουργούν μια κυκλική αλυσίδα όπου κάθε process στην αλυσίδα δεν μπορεί να προχωρήσει και περιμένει

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

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

Λειτουργικά Συστήματα Η/Υ Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 8 «Ιδεατή Μνήμη» Διδάσκων: Δ. Λιαροκαπης Διαφάνειες: Π. Χατζηδούκας Ιδεατή Μνήμη Οργάνωση. Εισαγωγή. Ιδεατές και πραγματικές διευθύνσεις. Λογική οργάνωση. Τμηματοποίηση

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

Θεωρία Λήψης Αποφάσεων

Θεωρία Λήψης Αποφάσεων Θεωρία Λήψης Αποφάσεων Ενότητα 8: Αναζήτηση με Αντιπαλότητα Μπεληγιάννης Γρηγόριος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης Επιχειρήσεων Αγροτικών Προϊόντων & Τροφίμων (Δ.Ε.Α.Π.Τ.) Αναζήτηση

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

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

Λειτουργικά Συστήματα ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Λειτουργικά Συστήματα Ενότητα 1: Αθηνά Βακάλη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

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

Υπολογιστική Πολυπλοκότητα

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

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

Μαθηματικά. Ενότητα 3: Εξισώσεις και Ανισώσεις 1 ου βαθμού. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

Μαθηματικά. Ενότητα 3: Εξισώσεις και Ανισώσεις 1 ου βαθμού. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής Μαθηματικά Ενότητα 3: Εξισώσεις και Ανισώσεις 1 ου βαθμού Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Cretive Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Cretive Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπ Θεωρία Υπολογισμού Ενότητα 11: Κλειστότητα, ΠΑ & καν. εκφράσεις Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Cretive Commons. Για εκπαιδευτικό υλικό, όπως εικόνες,

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ Θεωρία Υπολογισμού Ενότητα 7: Πεπερασμένη αναπαράσταση γλωσσών Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες,

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

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

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

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

Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Τμήμα Πληροφορικής

Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Τμήμα Πληροφορικής Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Τμήμα Πληροφορικής Άσκηση : Λυμένες Ασκήσεις Έστω ένα σύστημα μνήμης, στο οποίο έχουμε προσθέσει μια κρυφή μνήμη θυμάτων 6 θέσεων

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

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

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

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ Θεωρία Υπολογισμού Ενότητα 21: Υπολογισμοί ΜΤ - Αναδρομικές Γλώσσες Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

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

Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε

Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε Οµοφωνία σε σύστηµα µε αϖοτυχίες κατάρρευσης διεργασιών Παναγιώτα Φατούρου Κατανεµηµένα Συστήµατα 1 Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ Διακριτά Μαθηματικά Ι Ενότητα 2: Γεννήτριες Συναρτήσεις Μέρος 1 Διδάσκων: Χ. Μπούρας (bouras@cti.gr) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Δομές Δεδομένων. Ενότητα 11: Τεχνικές Κατακερματισμού. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής.

Δομές Δεδομένων. Ενότητα 11: Τεχνικές Κατακερματισμού. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Ενότητα 11: Τεχνικές Κατακερματισμού Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

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

Διάλεξη 10: Αλγόριθμοι Αμοιβαίου Αποκλεισμού σε περιβάλλον ανταλλαγής μηνυμάτων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 10: Αλγόριθμοι Αμοιβαίου Αποκλεισμού σε περιβάλλον ανταλλαγής μηνυμάτων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 10: Αλγόριθμοι Αμοιβαίου Αποκλεισμού σε περιβάλλον ανταλλαγής μηνυμάτων ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Αλγόριθμος Χρήση Συντονιστή Αλγόριθμος του Lamport Αλγόριθμος LeLann:

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

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 3 : Γραφήματα & Αποδείξεις. Αλέξανδρος Τζάλλας

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 3 : Γραφήματα & Αποδείξεις. Αλέξανδρος Τζάλλας 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Θεωρία Υπολογισμού Ενότητα 3 : Γραφήματα & Αποδείξεις Αλέξανδρος Τζάλλας 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

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

Συντομότερες ιαδρομές

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

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

Λογισμός 3. Ενότητα 18: Θεώρημα Πεπλεγμένων (Ειδική περίπτωση) Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών ΑΝΟΙΚΤΑ ΑΚΑ ΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Λογισμός 3. Ενότητα 18: Θεώρημα Πεπλεγμένων (Ειδική περίπτωση) Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών ΑΝΟΙΚΤΑ ΑΚΑ ΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑ ΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 18: Θεώρημα Πεπλεγμένων (Ειδική περίπτωση) Μιχ. Γ. Μαριάς Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

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

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

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

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

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Δημήτρης Πλεξουσάκης

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Συστήματα Διαχείρισης Βάσεων Δεδομένων Άσκηση 3 Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών ΗΥ 460 Συστήματα Διαχείρισης Βάσεων Δεδομένων Διδάσκων: Δημήτρης

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

Πρόβλημα συντομότερης διαδρομής - Shortest path problem. Κηρυττόπουλος Κωνσταντίνος Επ. Καθηγητής ΕΜΠ

Πρόβλημα συντομότερης διαδρομής - Shortest path problem. Κηρυττόπουλος Κωνσταντίνος Επ. Καθηγητής ΕΜΠ Πρόβλημα συντομότερης διαδρομής - Shortest path problem Κηρυττόπουλος Κωνσταντίνος Επ. Καθηγητής ΕΜΠ Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Βάσεις Δεδομένων ΙΙ Ενότητα 2

Βάσεις Δεδομένων ΙΙ Ενότητα 2 Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Βάσεις Δεδομένων ΙΙ Ενότητα 2: Ελέγχου Συνδρομικότητας Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

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

Εισαγωγή στα Λειτουργικά συστήματα Ι. Καθηγητής Κώστας Αναγνωστόπουλος

Εισαγωγή στα Λειτουργικά συστήματα Ι. Καθηγητής Κώστας Αναγνωστόπουλος Εισαγωγή στα Λειτουργικά συστήματα Ι Καθηγητής Κώστας Αναγνωστόπουλος Τι είναι Λειτουργικό Σύστημα Ένα πρόγραμμα ή συλλογή προγραμμάτων που ελέγχει και διαχειρίζεται το υλικό μιας υπολογιστικής μηχανής

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