Σελίδα Φορτώθηκε Προσπελάστηκε Συχνότητα R Μ (dirty)

Σχετικά έγγραφα
Μάθημα 7 ο. Αλγόριθμοι Χρονοδρομολόγησης

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

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

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

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

Εικονική Μνήµη. Κεφάλαιο 8. Dr. Garmpis Aristogiannis - EPDO TEI Messolonghi

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

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

Εργαστηριακή Άσκηση. Τμήμα Μηχανικών Πληροφορικής ΤΕ

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

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

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

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

Σκελετός Παρουσίασης

Λειτουργικά. Συστήματα Ι. Διεργασίες-Νήματα. Φ ρ ο ν τ ι σ τ ή ρ ι ο. Αριστείδης Ηλίας. Εργαστήριο Ηλεκτρονικών Υπολογιστών

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

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

Εισαγωγή στην Πληροφορική. Αντώνης Σταµατάκης

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

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

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

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

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

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

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

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

Εικονική Μνήμη (Virtual Memory)

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

ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ, ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ, ΤΜΗΥΠ ΤΟΜΕΑΣ ΛΟΓΙΚΟΥ ΤΩΝ Η/Υ

ΤΜΗΜΑ ΜΗΥΤΔ, ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ (ΗΥ222) ΔΙΔΑΣΚΩΝ: ΧΡΗΣΤΟΣ Δ. ΑΝΤΩΝΟΠΟΥΛΟΣ Τελική Εξέταση Σεπτεμβρίου 2009, Χρόνος: 2:30

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

ροµολόγηση Επεξεργαστή

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

Εισαγωγή στους Υπολογιστές

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

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

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

Σημειώσεις Λειτουργικών. μια ανοικτή φοιτητική προσέγγιση

Μάθημα 6 ο. Χρονοδρομολόγηση (Scheduling)

Χαράλαμπος Καραγιαννίδης

Τεχνολογία Υπολογιστικών Συστηµάτων & Λειτουργικά Συστήµατα Κεφάλαιο 8

Ο βασικός παράγοντας είναι ο χρόνος αξιοποίησης του επεξεργαστή Ελάχιστος αριθµός πράξεων και όχι µακρόχρονες αιτήσεις Ε/Ε

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

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

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

Ενότητα 6 (Κεφάλαιο 9) Χρονοδρομολόγηση

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

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

3. Σελιδοποίηση μνήμης 4. Τμηματοποίηση χώρου διευθύνσεων

Χρονοπρογραµµατισµός ιεργασιών (Process Scheduling)

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

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

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

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

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014

πίνακας σελίδων Bit Παρουσίας Αριθμός Πλαισίου

Οργάνωση Υπολογιστών

7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Εισαγωγή στους Η/Υ. Ενότητα 4: Λειτουργικά Συστήματα Ι. Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών

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

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

Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering. Εργαστήριο 8. Χειμερινό Εξάμηνο

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

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

#6 Λειτουργικά Συστήµατα. Νίκος Μ. Αβούρης

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ ΑΝΑΓΝΩΣΤΟΠΟΥΛΟΣ ΚΩΣΤΑΣ

Παράδειγμα 2. Λύση & Επεξηγήσεις. Τέλος_επανάληψης Εμφάνισε "Ναι" Τέλος Α2

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο Κάθε δομή μπορεί να χρησιμοποιηθεί σε οποιοδήποτε πρόβλημα ή εφαρμογή

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης)

ENOTHTA 5 XPONO POMOΛOΓHΣH

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

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

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

Μικροεπεξεργαστές ΑΣΚΗΣΕΙΣ ΘΕΩΡΙΑΣ. Υπεύθυνος: Δρ Άρης Παπακώστας

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

Ενότητα 2 (Κεφάλαιο 3) Περιγραφή και Έλεγχος Διεργασιών. Περιεχόμενα. Ανάγκη ύπαρξης διεργασιών 1

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ

Χρονοπρογραµµατισµός ΚΜΕ (CPU Scheduling)

[4] Στόχοι. Λογισμικό. Υπολογιστικά συστήματα: Στρώματα

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Χρονοπρογραμματισμός (ή Χρονοδρομολόγηση ή Δρομολόγηση)

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

Εικονική Μνήµη (Virtual Memory)

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

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

Ιεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι:

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

Μάθημα 8: Διαχείριση Μνήμης

Χρόνος Εκτέλεσης. Αρχική Προτεραιότητα Α Β Γ Α 4 1 3

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

Υποστήριξη Λ.Σ. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΛΑΜΙΑΣ. A. Μετατροπή αριθμών 1. Μετατροπή αριθμών από δεκαδικό σε δυαδικό σύστημα αρίθμησης

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

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ

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

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

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Transcript:

Ιδεατή Μνήμη Άσκηση 1: Ένας υπολογιστής έχει τέσσερα πλαίσια σελίδων. Οι χρονικές στιγμές φόρτωσης, τελευταίας προσπέλασης, ο αριθμός αναφορών και τα bit αναφοράς (R) και μεταβολής (M ή dirty ) φαίνονται στον πιο κάτω πίνακα (οι χρονικές στιγμές αναφέρονται σε «τικ» εσωτερικού ρολογιού). Σελίδα Φορτώθηκε Προσπελάστηκε Συχνότητα R Μ (dirty) 0 126 280 10 1 0 1 230 265 6 0 1 2 140 270 5 0 0 3 110 285 9 1 1 Ποιά σελίδα θα διαλέξουν οι αλγόριθμοι (α) MFU (Most Frequently Used), (β) FIFO (First-Ιn-First-Οut), (γ) LRU (Least Recently Used) και (δ) Δεύτερης Ευκαιρίας όταν γίνει το επόμενο σφάλμα σελίδας; ΣΗΜ: Ο MFU αλγόριθμος εξετάζει την πληροφορία που δίνει η στήλη Συχνότητα για να βρει τη σελίδα με τη μεγαλύτερη συχνότητα χρήσης. Ο FIFO αλγόριθμος εξετάζει το χρόνο φόρτωσης στη στήλη Φορτώθηκε και βγάζει την αρχαιότερη σελίδα στη μνήμη. Λύση: (α) MFU: Πιo συχνά χρησiμοποιούμενη είναι η 0 με 10 αναφορές. (β) FIFO: Φευγει πρώτος όποιος ήρθε πρώτος. Πρώτη σελίδα ήρθε η 3. Μικρότερος χρόνος φόρτωσης (110) σημαίνει αρχαιότερη σελίδα στη μνήμη. (γ) LRU: Η σελίδα 1 προσπελάστηκε πιο πριν από οποιαδήποτε άλλη (μικρότερος χρόνος προσπέλασης είναι ο 265) άρα είναι η λιγότερο πρόσφατα χρησιμοποιημένη. (δ) Δεύτερη Ευκαιρία. Η σελίδα 3 που θα διάλεγε ο αλγόριθμος FIFO (χρόνος φόρτωσης 110) παίρνει μια δεύτερη ευκαιρία, γιατί έχει το bit R ίσο με 1. Η επόμενη στη σειρά σελίδα (χρόνος φόρτωσης 126) είναι η 0 που έχει και αυτή αναφερθεί πρόσφατα (R = 1). Καταλήγουμε λοιπόν στη σελίδα 2 (χρόνος φόρτωσης 140), που δεν έχει αναφερθεί. Άσκηση 2: Δίνεται η ακολουθία αναφορών: 1 2 3 4 5 6 7 8 7 8 7 8 2 1 5 2 4 5 3 2 5 2. Πόσα σφάλματα σελίδας θα δημιουργήσουν οι αλγόριθμοι (α)lru, (β)fifo και (γ) Optimal, αν τα διαθέσιμα πλαίσια είναι ένα, τέσσερα, έξη και επτά; Υποθέτουμε ότι αρχικά τα πλαίσια είναι κενά.

Λύση: Στους πιο κάτω πίνακες, ο οριζόντιος άξονας είναι οι διαδοχικές αναφορές και κάθε στήλη αντιπροσωπεύει τα περιεχόμενα των διαθέσιμων πλαισίων. Αλγόριθμος:LRU, Αριθμός πλαισίων: 1 Αριθμός Σφαλμάτων: 22 0 1 2 3 4 5 6 7 8 7 8 7 8 2 1 5 2 4 5 3 2 5 2 Σφάλμα X X X X X X X X X X X X X X X X X X X X X X Αλγόριθμος:LRU, Αριθμός πλαισίων: 4 Αριθμός Σφαλμάτων: 13 0 1 1 1 1 5 5 5 5 5 5 5 5 2 2 2 2 2 2 2 2 2 2 1-2 2 2 2 6 6 6 6 6 6 6 6 1 1 1 1 1 3 3 3 3 2 - - 3 3 3 3 7 7 7 7 7 7 7 7 5 5 5 5 5 5 5 5 3 - - - 4 4 4 4 8 8 8 8 8 8 8 8 8 4 4 4 4 4 4 Σφάλμα X X X X X X X X - - - - X X X - X - X - - - Αλγόριθμος:LRU, Αριθμός πλαισίων: 6 Αριθμός Σφαλμάτων: 12 0 1 1 1 1 1 1 7 7 7 7 7 7 7 7 7 7 7 7 3 3 3 3 1-2 2 2 2 2 2 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 2 - - 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 - - - 4 4 4 4 4 4 4 4 4 4 1 1 1 1 1 1 1 1 1 5 - - - - - 6 6 6 6 6 6 6 6 6 6 6 4 4 4 4 4 4 Σφάλμα X X X X X X X X - - - - X X - - X - X - - - Αλγόριθμος:LRU, Αριθμός πλαισίων: 7 Αριθμός Σφαλμάτων: 10 0 1 1 1 1 1 1 1 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 2 - - 3 3 3 3 3 3 3 3 3 3 3 1 1 1 1 1 1 1 1 1 3 - - - 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 - - - - - 6 6 6 6 6 6 6 6 6 6 6 6 6 3 3 3 3 6 - - - - - - 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 Σφάλμα X X X X X X X X - - - - - X - - - - X - - - Αλγόριθμος:FIFO, Αριθμός πλαισίων: 1 Αριθμός Σφαλμάτων: 22 Αναφορά- 1 2 3 4 5 6 7 8 7 8 7 8 2 1 5 2 4 5 3 2 5 2

0 1 1 3 3 5 6 7 8 7 8 7 8 2 1 5 2 4 5 3 2 5 2 1 1 2 3 4 5 6 7 8 7 8 7 8 2 1 5 2 4 5 3 2 5 2 Σφάλμα 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Αλγόριθμος:Optimal, Αριθμός πλαισίων: 1 Αριθμός Σφαλμάτων: 22 0 1 2 3 4 5 6 7 8 7 8 7 8 2 1 5 2 4 5 3 2 5 2 Σφάλμα X X X X X X X X X X X X X X X X X X X X X X Αλγόριθμος:FIFO, Αριθμός πλαισίων: 4 Αριθμός Σφαλμάτων: 14 0 1 1 1 1 5 5 5 5 5 5 5 5 2 2 2 2 2 2 3 3 3 3 1-2 2 2 2 6 6 6 6 6 6 6 6 1 1 1 1 1 1 2 2 2 2 - - 3 3 3 3 7 7 7 7 7 7 7 7 5 5 5 5 5 5 5 5 3 - - - 4 4 4 4 8 8 8 8 8 8 8 8 8 4 4 4 4 4 4 Σφάλμα X X X X X X X X - - - - X X X - X - X X - - Αλγόριθμος:FIFO, Αριθμός πλαισίων: 6 Αριθμός Σφαλμάτων: 13 0 1 1 1 1 1 1 7 7 7 7 7 7 7 7 7 7 7 7 3 3 3 3 1-2 2 2 2 2 2 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 2 - - 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 - - - 4 4 4 4 4 4 4 4 4 4 1 1 1 1 1 1 1 1 1 4 - - - - 5 5 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 5 - - - - - 6 6 6 6 6 6 6 6 6 6 6 6 5 5 5 5 5 Σφάλμα X X X X X X X X - - - - X X - - X X X - - - Αλγόριθμος:FIFO, Αριθμός πλαισίων: 7 Αριθμός Σφαλμάτων: 11 0 1 1 1 1 1 1 1 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 1-2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 2 - - 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 - - - 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 5 - - - - - 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 - - - - - - 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 Σφάλμα X X X X X X X X - - - - - X - X - - X - - - Αλγόριθμος: Optimal, Αριθμός πλαισίων: 4 Αριθμός Σφαλμάτων: 11 0 1 1 1 1 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 2 - - 3 3 3 6 7 7 7 7 7 7 7 1 1 1 1 1 3 3 3 3 3 - - - 4 4 4 4 8 8 8 8 8 8 8 8 8 4 4 4 4 4 4

Σφάλμα X X X X X X X X - - - - - X - - X - X - - - Αλγόριθμος: Optimal, Αριθμός πλαισίων: 6 Αριθμός Σφαλμάτων: 9 0 1 1 1 1 1 1 1 8 8 8 8 8 8 1 1 1 1 1 1 1 1 1 2 - - 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 - - - 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 - - - - - 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 Σφάλμα X X X X X X X X - - - - - X - - - - - - - - Αλγόριθμος: Optimal, Αριθμός πλαισίων: 7 Αριθμός Σφαλμάτων: 8 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 - - 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 - - - 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 - - - - - 6 6 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 6 - - - - - - 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 Σφάλμα X X X X X X X X - - - - - - - - - - - - - - Συγκεντρωτικά αποτελέσματα: Ο παρακάτω πίνακας δίνει τον αριθμό σφαλμάτων ανά αλγόριθμο, με παράμετρο τα διαθέσιμα πλαίσια. Αλγόριθμοι Διαθέσιμα LRU FIFO Optimal πλαίσια 1 22 22 22 4 13 14 11 6 12 13 9 7 10 11 8 Άσκηση 3: Παρακάτω δίνεται η ακολουθία εντολών ενός προγράμματος ενός υπολογιστή με σελίδες των 512 bytes. Το πρόγραμμα έχει φορτωθεί στη διεύθυνση 1020 και ο δείκτης στίβας στη διέυθυνση 8192 (η στίβα μεγαλώνει προς τη διεύθυνση 0). Δώστε τη σειρά αναφορών στη μνήμη που δημιουργείται από το πρόγραμμα. Κάθε εντολή καταλαμβάνει 4 bytes (1 λέξη) και εμπεριέχει τις απόλυτες σταθερές. Και οι αναφορές σε εντολές και οι αναφορές σε δεδομένα μετράνε στη σειρά αναφορών. Φόρτωσε τη λέξη 6144 στον καταχωρητή 0 Σπρώξε τον καταχωρητή 0 στη στίβα Κάλεσε την υπορρουτίνα από το 5120 και στίβαξε τη διεύθυνση επιστροφής

Αφαίρεσε την απόλυτη σταθερά 6 από το δείκτη στίβας Σύγκρινε την πραγματική παράμετρο με τη απόλυτη σταθερά 4 Πήδα σε περίπτωση ισότητας στη διεύθυνση 5152 Λύση: Στον πιο κάτω πίνακα παρουσιάζονται οι καταχωρητές που χρησιμοποιούνται για την προσπέλαση μνήμης: Ο μετρητής προγράμματος δείχνει την διεύθυνση της επόμενης προς εκτέλεση εντολής. Ο δείκτης στοίβας, αυξάνεται αφού χρησιμοποιηθεί για την αποθήκευση στη στοίβα και ο δείκτης δεδομένων υπαγορεύεται από τη εκτελούμενη εντολή. Οι διευθύνσεις με (*) δημιουργούν προσπελάσεις στη μνήμη. Εντολή Μετρητής Δείκτης Δείκτης Σχόλιο προγράμματος στοίβας δεδομένων 0 1020 * 8192 Κατάσταση προ εκτελέσεως 1 1024 * 8192 6144 * Διάβασμα από τη μνήμη 2 1028 * 8191 8191 * Ο δείκτης μειώνεται προ εκτελέσεως 3 5120 * 8190 8190 * Κλήση υπορρουτίνας 4 5124 * 8184 Μείωση του δείκτη 5 5128 * 8184 8184 * Σύγκριση με δεδομένο από τη μνήμη 6 5152 * 8184 Υπόθετικό αποτέλεσμα σύγκρισης θετικό Ο πιο κάτω πίνακας συνοψίζει τις αναφορές και τις μετατρέπει σε αριθμούς σελίδας (πηλίκο διαίρεσης με το 512, αρχίζοντας από 0) Αναφορά 1020 1024 6144 1028 8191 5120 8190 5124 5128 8184 5152 Σελίδα 2 2 12 2 15 10 15 10 10 15 10

Αλγόριθμοι Χρονοδρομολόγησης Άσκηση 4: Έστω 3 διαδικασίες Α, Β, Γ οι οποίες καταφτάνουν στο σύστημα κατά τις χρονικές στιγμές 0, 2 και 4 αντίστοιχα, με σκοπό να εκτελέσουν υπολογισμούς στη CPU με απαιτήσεις χρόνου TΑ=7sec, TB=4sec και TΓ=1sec. 1. Δείξτε πώς θα εκτελεστούν οι ανωτέρω διεργασίες στη CPU για κάθε έναν από τους ακόλουθους αλγόριθμους χρονοδρομολόγησης: (α) Round Robin με κβάντο χρόνου 2 sec (β) Shortest Job First preemptive (δηλαδή επιτρέποντας διακοπή/επανεισαγωγή ) (γ) Shortest Job First non-preemptive (δηλαδή μη επιτρέποντας διακοπή /επανεισαγωγή ) 2. Υπολογίστε το μέσο χρόνο διεκπεραίωσης και το μέσο χρόνο αναμονής των τριών διαδικασιών μετά την εκτέλεσή τους με κάθε έναν από τους ανωτέρω αλγόριθμους χρονοδρομολόγησης. Λύση: 1(α) Εκτέλεση των διεργασιών με Round-Robin (κβάντο χρόνου 2 sec) 0 2 4 6 8 9 11 12 RR κβάντο 2 sec A A B A Γ Β Α Τη χρονική στιγμή 0 στην ουρά βρίσκεται μόνο η Α οπότε και εισέρχεται για εκτέλεση. Τη χρονική στιγμή 2 που τελειώνει το κβάντο χρόνου της επιστρέφει στην ουρά. Την ίδια χρονική στιγμή όμως έρχεται και η Β και μπαίνει και αυτή στην ουρά πίσω από την Α που μόλις επέστρεψε σε αυτήν (ready queue: A,B). Ετσι για το επόμενο κβάνο χρόνου εκτελείται πάλι η Α και στην ουρά μένει η Β (ready queue: B). Τη χρονική στιγμή 4 που τελειώνει το επόμενο κβάντο χρόνου της Α επιστρέφει ξανά στην ουρά (ready queue: B,Α). Την ίδια χρονική στιγμή όμως έρχεται και η Γ και μπαίνει και αυτή στην ουρά πίσω από την Α που μόλις επέστρεψε σε αυτήν (ready queue: Β,A,Γ). Ετσι στη συνέχεια (στο επόμενο κβάντο χρόνου) εκτελείται η Β, μετά η Α, μετά η Γ κ.ο.κ. εκ περιτροπής με τη σειρά που βρίσκονται στην ουρά (για κβάντο χρόνου 2 κάθε φορά η κάθε μία και μέχρι να ολοκληρωθεί η εκτέλεσή τους). 1(β) Εκτέλεση των διεργασιών με SJF (preemptive) 0 2 4 5 7 12 SJF - preemptive A B Γ Β Α Τη χρονική στιγμή 0 στην ουρά βρίσκεται μόνο η Α οπότε και εισέρχεται για εκτέλεση. Τη χρονική στιγμή 2 έρχεται η Β και επειδή η διάρκειά της (4sec) είναι μικρότερη από τον εναπομείναντα χρόνο της Α (7-2=5sec), εισερχεται αυτή για

εκτέλεση και η Α επιστρέφει στην ουρά. Τη χρονική στιγμή 4 έρχεται η Γ και επειδή η διάρκειά της (1sec) είναι μικρότερη από τον εναπομείναντα χρόνο της Β (4-2=2sec), εισερχεται αυτή για εκτέλεση και η Β επιστρέφει στην ουρά (πριν την Α γιατί της απομένει λιγότερος χρόνος από αυτόν που απομένει στην Α). Τη χρονική στιγμή 5 που τελειώνει και βγαίνει η Γ, εισέρχονται στη συνέχεια οι Β και η Α (με τη σειρά αυτή που βρίσκονται στην ουρά γιατί στη Β απομένει λιγότερος χρόνος απότι στην Α βλ. παραπάνω) και εκτελούνται μέχρι την ολοκλήρωσή τους. 1(γ) Εκτέλεση των διεργασιών με SJF (non-preemptive) 0 7 8 12 SJF non-preemptive A Γ Β Τη χρονική στιγμή 0 στην ουρά βρίσκεται μόνο η Α οπότε και εισέρχεται για εκτέλεση μέχρι την ολοκλήρωσή της. Τη χρονική στιγμή 7 που τελειώνει και βγαίνει η Α, έχουν αφιχθεί στην ουρά τόσο η Β όσο και η Γ οπότε επιλέγεται πρώτα η μικρότερη σε διάρκεια (Γ) και μετά η Β, και εκτελούνται με αυτή τη σειρά (Γ, Β) μέχρι την ολοκλήρωσή τους. 2. Χρόνος Διεκπεραίωσης = (στιγμή ολοκλήρωσης στιγμή άφιξης) Χρόνος Αναμονής = (χρόνος διεκπεραίωσης χρόνος εκτέλεσης στη CPU) Round-Robin SJF - preemptive SJF non-preemptive Διεκπερ. Αναμονής Διεκπερ. Αναμονής Διεκπερ. Αναμονής A 12-0 = 12 12-7 = 5 12-0= 12 12-7=5 7-0 = 7 7-7 = 0 B 11-2 = 9 9-4=5 7-2 = 5 5-4 =1 12-2 = 10 10-4 = 6 Γ 9-4 = 5 5-1=4 5-4 = 1 1-1 = 0 8-4 = 4 4-1 = 3 Μ.Χ. 26/3 = 8,66 14/3 = 4,66 18/3 = 6 6/3 = 2 21/3 = 7 9/3 = 3