Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Επαναληπτικές ασκήσεις

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Επαναληπτικές ασκήσεις"— Μεταγράφημα παρουσίασης:

1 Επαναληπτικές ασκήσεις
Μάθημα: Λειτουργικά Συστήματα 17/1/2017

2 Αμοιβαίος αποκλεισμός
Άσκηση 1 Δίνεται το παρακάτω πρόγραμμα P1: { P2:{ shared int x; shared int x; x = 10; x = 10; while (1) { while ( 1 ) { x = x - 1; x = x - 1; x = x + 1; x = x + 1; if (x != 10) if (x!=10) printf("x is %d",x) printf("x is %d",x) } } } } } } Λαμβάνοντας υπόψη ότι ο δρομολογητής σε ένα μονοεπεξεργαστικό σύστημα εναλλάσει τις εντολές των ταυτόχρονων διεργασιών χωρίς περιορισμούς βρείτε (α) το αποτύπωμα της εναλλαγής των διεργασιών που οδηγεί στην εκτύπωση του x is 10 (β) το αποτύπωμα της εναλλαγής που οδηγεί στην εκτύπωση «x is 8”. Θς πρέπει να θυμηθείτε ότι η υλοποίηση της απλής εντολής σε C “x=x+1” γίνεται από τη ρουτίνα σε Assembly LD R0,X /* load R0 from memory location x */ INCR R0 /* increment R0 */ STO R0,X /* store the incremented value back in X */

3 Αμοιβαίος αποκλεισμός
Λύση (α) P1: x = x - 1; 9 P1: x = x + 1; 10 P2: x = x - 1; 9 P1: if(x != 10) 9 P2: x = x + 1; 10 P1: printf("x is %d", x); 10

4 Αμοιβαίος αποκλεισμός
(β) Instruction M(x) P1-R0 P2-R0 P1: LD R0, x P1: DECR R P1: STO R0, x P2: LD R0, x P2: DECR R P2: STO R0, x P1: LD R0, x P1: INCR R P2: LD R0, x P2: INCR R P2: STO R0, x P2: if(x != 10) printf("x is %d", x); P2: "x is 9" is printed. P1: STO R0, x P1: if(x != 10) printf("x is %d", x); P1: "x is 9" is printed.

5 Αμοιβαίος αποκλεισμός
-14- P1: LD R0, x P1: DECR R P1: STO R0, x P2: LD R0, x P2: DECR R P2: STO R0, x P1: LD R0, x P1: INCR R P1: STO R0, x P1: if(x != 10) printf("x is %d", x); P1: "x is 8" is printed.

6 Διαχείριση Μνήμης Χρησιμοποιείται ένα σχήμα δυναμικής κατάτμησης καιστο σχήμα που ακολουθεί δίνεται η διαμόρφωση της μνήμης σε μια δεδομένη χρονική στιγμή. Οι σκιασμένες περιοχές είναι blocks που έχουν ανατεθεί και οι λευκές είναι ελεύθερα blocks. Οι επόμενες τρεις αιτήσεις είναι για 40Μ, 20Μ και 10Μ. Προσδιορίστε τη διεύθυνση έναρξης για καθένα από τα τρια blocks χρησμοποιώντας τους παρακάτω αλγορίθμους 20Μ 20Μ 40Μ Μ Μ 10Μ 60Μ Μ Μ 30Μ Μ Μ

7 Διαχείριση μνήμης Α.

8 Ιδεατή Μνήμη Έστω ότι δίνεται ο παρακάτω πίνακας σελίδων για την τρέχουσα διεργασία που εκτελείται στον επεξεργαστή. ¨ολοι οι αριθμοί είνια δεκαδικοί, όλες οι αριθμήξσεις ξεκινούν από το 0 και όλες οι διευθύνσεις είναι διευθύνσεις των bytes μνήμης. Το μέγεθος σελίδας είναι 1024 bytes. Αριθμός ιδεατής σελίδας Έγκυρο bit Bit αναφοράς Bit τροποποίησης Αριθμός παλισίου σελίδας 1 4 7 2 - 3 5

9 Ιδεατή Μνήμη Α. Περιγράψτε ακριβώς τον τρόπο με τον οποίο γενικά μια ιδεατή διεύθυνση που οπαρ΄γεται από τη μεταφράζεται σε διεύθυνση της φυσικής κύρια μνήμης Β. Σε ποιά φυσική διεύθυνση αν υπάρχει, αντιστοιχούν οι παρακάτω ιδεατές διευθύνσεις 1052, 2221 και 5499

10 Ιδεατή Μνήμη Χώρισε δυαδική διεύθυνση σε ιδεατό αριθμό σελίδας και μετρατόπιση Χρησιμοποίησε VPN ως δείκτη στον πίκα σελίδων Βρες τον αριθμό πλαισίου Σύμπτυξε με ματατόπιση για να βρεις την φυσική διέυθυνση

11 Ιδεατή Μνήμη 1052=1024+28 -VPN 1 στη PFN 7,(7*1024+28=7196)


Κατέβασμα ppt "Επαναληπτικές ασκήσεις"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google