Διευθύνσεις

Συμβολικές διευθύνσεις
Μετατοπιζόμενες διευθύνσεις

Απόλυτες διευθύνσεις (static)

Απόλυτες διευθύνσεις (dynamic)
22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

1

Σκέτη μηχανή (bare machine)
ƒ

ƒ

Χαρακτηριστικά:
9

μέγιστη ευελιξία

9

χαμηλό κόστος

8

προγραμματιστική πολυπλοκότητα

8

μειωμένη ασφάλεια

-

εφαρμογή σε εξειδικευμένα συστήματα

Υποστήριξη υλικού (hardware):
-

22/4/2007

καμία

ΤΟΜΟΣ_Β'-Ch4-5

2

Παραμένων επόπτης
(resident monitor)
ƒ

Επόπτης και μία (1) διεργασία
9
8

ƒ

Επόπτης και (1) διεργασία με εναλλαγή διεργασιών
9
8

ƒ

προστασία δεδομένων & υπηρεσιών ΛΣ
Χωρίς πολυπρογραμματισμό

εξυπηρέτηση πολλών διεργασιών – πολυπρογραμματισμός
overhead χρόνου εναλλαγής

Υποστήριξη υλικού (hardware):
-

22/4/2007

Καταχωρητής φραγής (στατική μετατόπιση)
Καταχωρητής βάσης (δυναμική μετατόπιση)

ΤΟΜΟΣ_Β'-Ch4-5

3

Πολλαπλές υποδιαιρέσεις (σταθερές)
ƒ

Χαρακτηριστικά:
9
9
8
8
8

ƒ

εξυπηρέτηση πολλών διεργασιών – πολυπρογραμματισμός
εξάλειψη χρόνου εναλλαγής (σε σχέση με τον παραμένοντα επόπτη)
εσωτερική κλασματοποίηση
αλγοριθμική πολυπλοκότητα (βέλτιστο μέγεθος περιοχών, ανάθεση)
ανάγκη για γραμμική θεώρηση της μνήμης

Υποστήριξη υλικού (hardware):
-

-

22/4/2007

Καταχωρητές Κάτω και Άνω Ορίου για κάθε διεργασία (στατική
μετατόπιση)
Καταχωρητές Βάσης και Ορίου για κάθε διεργασία (δυναμική
μετατόπιση)

ΤΟΜΟΣ_Β'-Ch4-5

4

Πολλαπλές υποδιαιρέσεις
(μεταβλητές)
ƒ

Χαρακτηριστικά:
9
9
8
8
8

ƒ

εξυπηρέτηση πολλών διεργασιών – πολυπρογραμματισμός
εξάλειψη εσωτερικής κλασματοποίησης
εξωτερική κλασματοποίηση
επιβάρυνση διαχείρισης οπών (συμπίεση, κ.λπ.)
ανάγκη για γραμμική θεώρηση της μνήμης

Υποστήριξη υλικού (hardware):
-

-

22/4/2007

Καταχωρητές Κάτω και Άνω Ορίου για κάθε διεργασία
(στατική μετατόπιση)
Καταχωρητές Βάσης και Ορίου για κάθε διεργασία (δυναμική
μετατόπιση)

ΤΟΜΟΣ_Β'-Ch4-5

5

Μετατόπιση (relocation)
„
„

Φυσικές /απόλυτες διευθύνσεις
Λογικές / μετατοπίσιμες διευθύνσεις
„

Φυσική διεύθυνση = λογική + βάση,
„

22/4/2007

αν προκύπτει μέσα στα όρια.

ΤΟΜΟΣ_Β'-Ch4-5

6

Προστασία (protection)
„

Καταχωρητές άνω/κάτω ορίων

„

Καταχωρητές βάσης και ορίου

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

7

Πολυπρογραμματισμός δρομολόγηση διεργασιών
„

Χρονοδρομολογητής: υπεύθυνος για
Α - επιλογή διεργασίας από περιφερειακή μνήμη
Β - επιλογή υποδιαίρεσης μνήμης για φόρτωση
διεργασίας
Γ - κατανομή CPU σε διεργασίες
Μνήμη

Επικουρική Μνήμη

CPU

A
22/4/2007

B
ΤΟΜΟΣ_Β'-Ch4-5

Γ
8

Χρονοδρομολόγηση
„

Round Robin – εκ περιτροπής
„

Κβάντο χρόνου

„

FCFS –με βάση τη σειρά άφιξης
SJF –με βάση τη διάρκεια
Προτεραιότητες

„

Συνδυασμοί τους

„
„

„
„

Προεκχωρητικοί (preemptive)
Mη-προεκχωρητικοί (non-preemptive)

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

9

FCFS - Εξυπηρέτηση
µε βάση τη σειρά άφιξης

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

10

Εξυπηρέτηση
µε βάση τη διάρκεια

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

11

Round Robin - Χρονοδροµολόγηση
κυκλικής επαναφοράς

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

12

Προγραμματισμός διεργασιών
„

Μονοπρογραμματισμός

„

Πολυπρογραμματισμός
„
„

Με σταθερά τμήματα μνήμης
Με μεταβλητά τμήματα μνήμης

OS

OS

OS

OS

process 5

process 5

process 5

process 5

process 9

process 9

process 8
process 2

22/4/2007

process 10
process 2

process 2

ΤΟΜΟΣ_Β'-Ch4-5

process 2

13

Άσκηση: Αξιοποίηση της CPU
„

„

„

Ένα πρόγραμμα όταν τρέχει μόνο του στο υπολογιστικό
σύστημα σπαταλά το 50% του χρόνου του για είσοδο/έξοδο.
Έστω ότι τέσσερα παρόμοια προγράμματα βρίσκονται στη
μνήμη του συστήματος και εκτελούνται ταυτόχρονα.
Ποιος ο βαθμός μη αξιοποίησης της CPU;

_____________________________
Ἀσκηση αυτοαξιολόγησης: 4.9
22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

14

Άσκηση: Αξιοποίηση της CPU
„

„

„

Ένα πρόγραμμα όταν τρέχει μόνο του στο υπολογιστικό σύστημα
σπαταλά το 50% του χρόνου του για είσοδο/έξοδο.
Έστω ότι τέσσερα παρόμοια προγράμματα βρίσκονται στη μνήμη
του συστήματος και εκτελούνται ταυτόχρονα.
Ποιος ο βαθμός μη αξιοποίησης της CPU;

Ένα πρόγραμμα καταναλώνει ένα ποσοστό p (0 <= p < 1) του χρόνου του για
εργασίες εισόδου/εξόδου.
Με n τέτοια προγράμματα συγχρόνως στη μνήμη, η CPU δεν αξιοποιείται
μόνο όταν ΟΛΑ τα προγράμματα περιμένουν για είσοδο/έξοδο ταυτόχρονα.
Το ποσοστό του χρόνου της CPU που σπαταλιέται με αυτόν τον τρόπο είναι
ίσο με την πιθανότητα να συμβαίνει κάτι τέτοιο μια συγκεκριμένη χρονική
στιγμή, δηλαδή είναι ίσο με pn.
Άρα: n=4, p=0,5
Επομένως το ποσοστό του χρόνου που η CPU μένει αδρανής είναι:
(0,5)4 = 0,0625 ή αλλιώς 6,25%.
22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

15

Διαχείριση Μνήμης
„

Στατική κατανοµή (static allocation)
„

„

„

η µνήµη είναι χωρισµένη από το ΛΣ σε
προκαθορισµένα τµήµατα πριν από την εκτέλεση
των διεργασιών. Όταν ένα πρόγραµµα πρόκειται να
εκτελεστεί, το ΛΣ επιλέγει ένα τµήµα µνήµης που
καλύπτει τις ανάγκες της νέας διεργασίας σε µνήµη
και της το παραχωρεί.
Η στατική κατανοµή µνήµης είναι απλή και λύνει το
πρόβληµα της προστασίας της µνήµης.
Όµως,
„

„

22/4/2007

τα τµήµατα µνήµης δε χρησιµοποιούνται πλήρως από τις
διεργασίες και έτσι µένουν αναξιοποίητα.
Επιπλέον οι διεργασίες δεν µπορούν να χρησιµοποιήσουν
µνήµη από κοινού, κάτι που είναι χρήσιµο όταν πολλές
διεργασίες εκτελούν το ίδιο πρόγραµµα.
ΤΟΜΟΣ_Β'-Ch4-5

16

Διαχείριση Μνήμης
„

Δυναµική κατανοµή (dynamic allocation)
„

„

„

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

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

17

Κλασματοποίηση
(fragmentation)
για μέγεθος διαδικασίας m και περιοχής n
„

Εσωτερική κλασματοποίηση : n ≥ m
„

„

το υπόλοιπο της περιοχής που μένει
αχρησιμοποίητο (n – m).

Εξωτερική κλασματοποίηση : n < m
„

Η περιοχή είναι διαθέσιμη αλλά παραμένει
αχρησιμοποίητη λόγω μικρού μεγέθους.

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

18

Αλγόριθμοι δυναμικής
τοποθέτησης
„

Πρώτης τοποθέτησης – first fit
„

Σάρωση της λίστας τμημάτων (από την αρχή) μέχρι να βρεθεί κενό που
να χωράει τη διεργασία
„

„

Επόμενης τοποθέτησης – next fit
„

Σάρωση της λίστας τμημάτων (από το επόμενο αυτού που χρησιμοποιήθηκε τελευταία) μέχρι να βρεθεί κενό που να χωράει τη διεργασία
„

„

Παραλλαγή του first-fit. Λίγο χειρότερη απόδοση.

Καλύτερης τοποθέτησης – best fit
„

Σάρωση ολόκληρης της λίστας τμημάτων και εντοπισμός του πλέον
κατάλληλου κενού
„

„

Πολύ γρήγορος. Σπατάλη μεγάλων τμημάτων για μικρές διεργασίες

Πιο αργός. Αφήνει αχρησιμοποίητα μικρά τμήματα

Χειρότερης τοποθέτησης – worst fit
„

Σάρωση ολόκληρης της λίστας τμημάτων και εντοπισμός του
μεγαλύτερου κενού
„

Οπότε απομένει σχετικά μεγάλο τμήμα για χρησιμοποίηση. Ο πιο αργός.

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

19

‘Ασκηση
„

„

„

Εστω ένα σύστημα με τα ακόλουθα μεγέθη κενών κατά σειρά:
Α. 10Κ, Β: 4Κ, Γ: 20Κ, Δ: 18Κ, Ε: 7Κ, Ζ: 9Κ, Η: 12Κ, Θ: 15Κ
Εστω ότι καταφτάνουν αιτήσεις/διεργασίες με την εξής σειρά:
12Κ 10Κ 8Κ
Σε ποιό κενό μνήμης θα εκχωρηθεί κάθε μία από τις παραπάνω
διεργασίες για κάθε έναν από τους αλγορίθμους
„

(i) first fit, (ii) best fit, (iii) worst fit και (iv) next fit

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

20

‘Ασκηση
„

„

„

Εστω ένα σύστημα με τα ακόλουθα μεγέθη κενών κατά σειρά:
Α. 10Κ, Β: 4Κ, Γ: 20Κ, Δ: 18Κ, Ε: 7Κ, Ζ: 9Κ, Η: 12Κ, Θ: 15Κ
Εστω ότι καταφτάνουν αιτήσεις/διεργασίες με την εξής σειρά:
12Κ 10Κ 8Κ
Σε ποιό κενό μνήμης θα εκχωρηθεί κάθε μία από τις παραπάνω
διεργασίες για κάθε έναν από τους αλγορίθμους
„

(i) first fit, (ii) best fit, (iii) worst fit και (iv) next fit

First Fit
Γ
Α
Γ

12Κ
10Κ

22/4/2007

Best Fit
Η
Α
Ζ
ΤΟΜΟΣ_Β'-Ch4-5

Worst Fit
Γ
Δ
Θ

Next Fit
Γ
Δ
Ζ
21

Άσκηση: Χρόνος
διεκπεραίωσης/αναμονής
Διαδικασία Χρόνος Άφιξης Χρόνος εκτέλεσης

Πολιτική χρονοδρομολόγησης
Shortest - Job - First (SJF)
χωρίς επαναεισαγωγή

P1

1

8

P2

2

4

P3

3

9

P4

4

5

Υπολογισμός μέσου χρόνου διεκπεραίωσης και μέσου χρόνου αναμονής
P1

P2
9

1

P4
13

Χρόνοι διεκπεραίωσης :
P1 : 9-1=8
P2 : 13-2=11
P3 : 27-3=24
P4 : 18-4=14
και ΜΧΔ=(8+11+24+14)/4=57/4=14,25
22/4/2007

P3
18

27

Χρόνοι αναμονής :
P1 : 9-1-8=0
P2 : 13-2-4=7
P3 : 27-3-9=15
P4 : 18-4-5=9
και ΜΧΑ=(0+7+15+9)/4=31/4=7,75

ΤΟΜΟΣ_Β'-Ch4-5

22

Άσκηση: Σύστημα μεταβλητών
υποδιαιρέσεων (χωρίς συμπίεση)
Διαδικασία

Χρόνος Άφιξης

Διάρκεια

Μνήμη

P1

0

3

100K

P2

1

4

40K

P3

3

2

120K

P4

4

4

60K

P5

6

3

140K

Παραμένων
Επόπτης
32K

AVAILABLE
(FREE)
MEMORY
(224Κ)

Το ότι μία διεργασία έχει Χρόνο Άφιξης ‘i’ σημαίνει ότι έχει φτάσει κατά τη διάρκεια αυτής
της χρονικής στιγμής στο σύστημα, και από την επόμενη χρονική στιγμή (‘i+1’) μπορεί να
αρχίσει να εκτελείται στη CPU (εφόσον είναι δυνατή η εκχώρηση της απαιτούμενης
μνήμης). Το ότι μία διεργασία έχει Διάρκεια ‘t’ σημαίνει ότι για να ολοκληρωθεί η εκτέλεσή
της απαιτείται να βρεθεί στη CPU για ‘t’ (συνολικά) χρονικές στιγμές.

Εκχώρηση μνήμης: Best-fit
Εκχώρηση CPU: Round-robin με κβάντο ‘1’
22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

23

Άσκηση: Σύστημα μεταβλητών
υποδιαιρέσεων (χωρίς συμπίεση)
Χρον.
Στιγμή

Άφιξη

Εικόνα Μνήμης

CPU

Ουρά
Μνήμης

Τερματισμός

0

P1

<οπή, 224Κ>

----

P1

----

1

P2

< P1, 100K>, <οπή, 124Κ>

P1

P2

----

2

----

< P1, 100K>, < P2, 40Κ>, <οπή, 84Κ>

P1

----

----

3

P3

< P1, 100K>, < P2, 40Κ>, <οπή, 84Κ>

P2

P3

----

4

P4

< P1, 100K>, < P2, 40Κ>, <οπή, 84Κ>

P1

P3, P4

P1

5

----

< οπή, 100K>, < P2, 40Κ>,< P4, 60Κ>, <οπή, 24Κ>

P2

P3

----

6

P5

< οπή, 100K>, < P2, 40Κ>,< P4, 60Κ>, <οπή, 24Κ>

P4

P3, P5

----

7

----

<οπή, 100Κ>, < P2, 40Κ>,< P4, 60Κ>, <οπή, 24Κ>

P2

P3, P5

----

8

----

<οπή, 100Κ>, < P2, 40Κ>,< P4, 60Κ>, <οπή, 24Κ>

P4

P3, P5

----

9

----

<οπή, 100Κ>, < P2, 40Κ>, < P4, 60Κ>, <οπή, 24Κ>

P2

P3, P5

P2

10

----

< P3, 120Κ>, <οπή, 20Κ>, < P4, 60Κ>, <οπή, 24Κ>

P4

P5

----

11

----

< P3, 120Κ>, <οπή, 20Κ>, < P4, 60Κ>, <οπή, 24Κ>

P3

P5

----

12

----

< P3, 120Κ>, <οπή, 20Κ>, < P4, 60Κ>, <οπή, 24Κ>

P4

P5

P4

13

----

< P3, 120Κ>, <οπή, 104Κ>

P3

P5

P3

14

----

< P5, 140Κ>, <οπή, 84Κ>

P5

----

----

15

----

< P5, 140Κ>, <οπή, 84Κ>

P5

----

----

16

----

< P5, 140Κ>, <οπή, 84Κ>

P5

----

P5

17

----

<οπή, 224Κ>

----

----

----

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

24

Συμπίεση (compaction)
„

„

„

Αναδιάταξη της μνήμης ώστε να βρεθεί όλη
η ελεύθερη μνήμη σε μια μεγάλη (ενιαία)
περιοχή.
Κόστος: απαιτείται πολύς χρόνος από τη
CPU για να γίνει συμπίεση – όσο συχνότερα
γίνεται τόσο χειρότερα
Λύση:Χρήση Ειδικού Υλικού για συμπίεση
Εξετάσεις 2002 – Θέμα 3
22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

25

Σελιδοποίηση
„

„

Διαίρεση της φυσικής μνήμης σε P πλαίσια (frames)
ορισμένου σταθερού μεγέθους 2n bytes.
Χρήση του πίνακα πλαισίων (frame table) για να
καταγράφονται
„
„

„

„

„

ποια πλαίσια χρησιμοποιούνται
από ποιές διεργασίες.

Διαίρεση της λογικής μνήμης σε L σελίδες (pages)
ορισμένου σταθερού μεγέθους 2n bytes.
Διεργασίες μεγέθους m σελίδων φορτώνονται σε k
ελεύθερα πλαίσια.
Κάθε διεργασία έχει ένα πίνακα σελίδων (page table)
για τη μετατροπή των αριθμών σελίδων σε αριθμούς
πλαισίων.

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

26

Σελιδοποίηση
„

Οι (λογικές) διευθύνσεις είναι της
μορφής
„
„

22/4/2007

αριθμός σελίδας (page-number)
μετατόπιση σελίδας (offset)

ΤΟΜΟΣ_Β'-Ch4-5

:p
:d

27

Σελιδοποίηση

„

„

Αριθμός σελίδας p: δείκτης στη θέση του πίνακα σελίδων
που περιέχει τη φυσική διεύθυνση του πλαισίου
(διεύθυνση βάσης) όπου είναι αποθηκευμένη η σελίδα.
Μετατόπιση σελίδας d: προστίθεται στη διεύθυνση βάσης
για να βρεθεί η πραγματική φυσική διεύθυνση.
22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

28

Σελιδοποίηση: παράδειγμα

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

29

Σελιδοποίηση: παράδειγμα

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

30

Σελιδοποίηση: παράδειγμα
page table

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

31

Άσκηση: Σελιδοποίηση
Θεωρούμε ένα χώρο λογικών διευθύνσεων που αποτελείται από
16 σελίδες των 1024 λέξεων η κάθε μια, ενώ η απεικόνιση
γίνεται σε μια φυσική μνήμη των 32 πλαισίων σελίδας
1. Πόσα bits έχει μια λογική διεύθυνση;
2. Πόσα bits έχει μια φυσική διεύθυνση;
3. Περιγράψτε τη δομή του πίνακα σελίδων

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

32

Άσκηση: Σελιδοποίηση
Θεωρούμε ένα χώρο λογικών διευθύνσεων που αποτελείται από
16 σελίδες των 1024 λέξεων η κάθε μια, ενώ η απεικόνιση
γίνεται σε μια φυσική μνήμη των 32 πλαισίων σελίδας
1. Πόσα bits έχει μια λογική διεύθυνση;
2. Πόσα bits έχει μια φυσική διεύθυνση;
3. Περιγράψτε τη δομή του πίνακα σελίδων

1. 14 bits λογική διεύθυνση (4 bits για την κωδικοποίηση των 16 αριθμών
σελίδων και 10 bits για την κωδικοποίηση της μετατόπισης σε μια σελίδα των
1024 λέξεων)
2. 15 bits φυσική διεύθυνση (5 bits για την κωδικοποίηση των 32 αριθμών
πλαισίων και 10 bits για την κωδικοποίηση της μετατόπισης σε ένα πλαίσιο
των 1024 λέξεων)
3. Υπάρχουν 16 στοιχεία στον πίνακα, ένα για κάθε σελίδα. Ο αριθμός σελίδας
είναι ένας δείκτης στον πίνακα, τα στοιχεία του οποίου περιέχουν αριθμούς
των 5 bits που αναπαριστούν τη φυσική διεύθυνση της αρχής ενός πλαισίου.
22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

33

Πλεονεκτήματα Σελιδοποίησης
„
„
„

Ενιαίος χώρος διευθύνσεων (address space)
Τμηματική φόρτωση των διεργασιών στη μνήμη
Το σταθερό μέγεθος απλοποιεί τον τοποθέτηση
(allocation)

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

34

Σελιδοποίηση: παράδειγμα
Εστω Φυσική Μνήμη με :
)

Μέγεθος Φυσικής Μνήμης: Μ = 2m (π.χ. 64Μ = 226)

)

Μέγεθος Πλαισίου σελίδας: P = 2k (π.χ. 4K = 212)

)

Αριθμός Πλαισίων σελίδων: M/P = 2m-k (π.χ. 16Κ = 214)

Εστω πρόγραμμα/διεργασία (ιδεατή μνήμη) με:
)

Μέγεθος απαιτούμενης μνήμης: N = 2n (π.χ. 2Μ = 221)

)

Μέγεθος Σελίδας: P = 2k (π.χ. 4K = 212)

)

Αριθμός Σελίδων: Ν/P = 2n-k (π.χ. 512 = 29)

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

35

Σελιδοποίηση: παράδειγμα
Κάθε ιδεατή διεύθυνση ‘U’ (n bits) είναι στη μορφή:
Αριθμός Ιδεατής Σελίδας ‘p’ (n-k bits)

Μετατόπιση ‘d’

(k bits)

Και μετατρέπεται σε φυσική διεύθυνση Φ (σύνολο m bits):
Αριθμός Φυσικής Σελίδας ‘f’ (m-k bits)

Μετατόπιση ‘d’ (k bits)

Εστω ιδεατή διεύθυνση προγράμματος U και μέγεθος σελίδας P

p = U div P

d = U mod P

| U = (p x P) + d

f = Φ div P

d = Φ mod P

| Φ = (f x P) + d

Και

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

36

Άσκηση: Effective Access Time
(α) Θεωρείστε ότι σε ένα σύστημα σελιδοποίησης που χρησιμοποιεί
συσχετιστικούς καταχωρητές (μνήμη cache) για πίν.σελίδων:
(α) ο (πραγματικός) χρόνος απευθείας προσπέλασης της μνήμης
είναι 560 ns,
(β) ο χρόνος προσπέλασης των καταχωρητών είναι 40 ns,
(γ) μέσω της χρήσης των καταχωρητών προκαλείται τελικά
(«μέσος χρόνος προσπέλασης» - effective access time)
επιβάρυνση 25% σε σχέση με το χρόνο απευθείας προσπέλασης.
Υπολογίστε το «λόγο επιτυχίας» των συσχετ. καταχωρητών.
_____________________________
Άσκηση αυτοαξιολόγησης: 4.25
22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

37

Άσκηση: Effective Access Time
(α) Με τη χρήση των συσχετιστικών καταχωρητών και αν ο λόγος επιτυχίας είναι ‘f’
απαιτείται χρόνος
„

„

(40+560)=600ns με πιθανότητα ‘f’ (αν βρεθεί η εγγραφή του πίνακα σελίδων στους
καταχωρητές) – δηλαδή 40ns για να βρούμε την εγγραφή του πίνακα σελίδων στους
καταχωρητές και 560 για να προσπελάσουμε την κατάλληλη θέση φυσικής μνήμης, και
(40+560+560)=1160ns με πιθανότητα ‘1-f’ (αν δεν βρεθεί η εγγραφή του πίνακα
σελίδων στους καταχωρητές) – δηλαδή 40ns για να ‘μην’ βρούμε τελικά την εγγραφή
του πίνακα σελίδων στους καταχωρητές, 560 για να την βρούμε στον πίνακα σελίδων
που είναι φορτωμένος στη φυσική μνήμη και 560 για να προσπελάσουμε την
κατάλληλη θέση φυσικής μνήμης.

Επιβάρυνση 25% σε σχέση με το χρόνο απευθείας προσπέλασης σημαίνει τελικά
«μέσος χρόνος προσπέλασης» = 560+(560x25%) = 700ns
Αρα συνολικά έχουμε:
(f x 600) + ((1-f) x 1160) = 560+(560x25%) Æ 600f + 1160 – 1160f = 700
Æ 560f = 460 Æ f = 82,14%

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

38

Άσκηση: Effective Access Time
(β) αν ο λόγος επιτυχίας ήταν ίσoς με 95%, πόση θα ήταν η
επιβάρυνση ;

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

39

Άσκηση: Effective Access Time
(β) Ομοίως αν f=95% και συμβολίσουμε την επιβάρυνση με ‘Ε’ τότε
έχουμε:
(0.95 x 600) + (0.05 x 1160) = 560 + (560 x E) Æ
560E = (570 + 58 – 560) Æ E = 12,14%

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

40

Τμηματοποίηση
1
4

1
„

Τμήμα είναι μια λογική
που περιέχει, π.χ.
„
„
„
„

„
„

μονάδα2

κυρίως πρόγραμμα
διαδικασίες/συναρτήσεις
μεταβλητές
σωρούς, πίνακες

3

4

2
3

user space

physical memory space

Συνεχή τμήματα μεταβλητού μεγέθους
Ένα ή περισσότερα τμήματα ανά διεργασία
22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

41

Τμηματοποίηση
„

Λογικές διευθύνσεις της μορφής:
„
„

„

Αριθμός τμήματος (segment-number) : p
Μετατόπιση (offset)
:d

Κάθε εγγραφή στον πίνακα τμημάτων
περιέχει:
„
„

Βάση (base) : αρχική φυσική διεύθυνση τμήματος
Όριο (limit) : μήκος του τμήματος

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

42

Τμηματοποίηση
„

Απαιτούνται δύο καταχωρητές:
„

„

„

Segment Table Base Register: δείχνει στον πίνακα
τμημάτων στην μνήμη
Segment Table Limit Register: καταγράφει πόσα
τμήματα χρησιμοποιούνται.

Mια λογική διεύθυνση είναι αποδεκτή αν
„
„

seg-number < STLR και
offset < limit(seg-number).

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

43

Τμηματοποίηση

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

44

Τμηματοποίηση: παράδειγμα

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

45

Τμηματοποίηση: παράδειγμα
Sharing of Segments

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

46

Πλεονεκτήματα Τμηματοποίησης

„

Δεν υπάρχουν page faults

„

Δεν υπάρχει εσωτερική κλασματοποίηση

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

47

Τμηματοποιημένη Σελιδοποίηση
„

Τμηματοποίηση του πίνακα σελίδων

„

Λογική διεύθυνση
„
„

22/4/2007

Αριθμός σελίδας
:p
Μετατόπιση μέσα στη σελίδα : d

ΤΟΜΟΣ_Β'-Ch4-5

48

Τμηματοποιημένη Σελιδοποίηση
„

Ο αριθμός σελίδας περιλαμβάνει
„
„

„

„

„

:s
: p’

Ο αριθμός τμήματος δείχνει στον πίνακα τμημάτων
που περιέχει
„

„

Αριθμό τμήματος
Μετατόπιση τμήματος

Διεύθυνση βάσης (base) του πίνακα σελίδων του τμήματος
το μήκος του πίνακα σελίδων (range)

Η μετατόπιση τμήματος προστίθεται στη διεύθυνση
βάσης για να δώσει τον αριθμό πλαισίου.
Ο αριθμός πλαισίου f συνδυάζεται με την μετατόπιση
σελίδας για να δώσει τη φυσική διεύθυνση.
22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

49

Τμηματοποιημένη Σελιδοποίηση
CPU

p

d

s

Φυσική
Μνήμη

p'

f

d

+
Μήκος
STΒR

Βάση ΠΣ

s
+

f
p'

Πίνακας
Τμημάτων

22/4/2007

Μέρος του
Πίνακα Σελίδων

ΤΟΜΟΣ_Β'-Ch4-5

50

Σελιδοποιημένη Τμηματοποίηση
„
„
„

„

Διευθύνσεις τμημάτων
Σελίδες μέσα σε τμήματα
Τα τμήματα μοιράζονται σε σελίδες που
είναι λογικά (όχι φυσικά) συνεχόμενες.
Λογική διεύθυνση
„
„

22/4/2007

Αριθμός τμήματος : s
Μετατόπιση μέσα στο τμήμα : d

ΤΟΜΟΣ_Β'-Ch4-5

51

Σελιδοποιημένη Τμηματοποίηση
„

Ο αριθμός τμήματος s
δείχνει στον πίνακα
τμημάτων που
περιέχει:
„

„

Διεύθυνση βάσης
(base) του πίνακα
σελίδων του τμήματος
το μήκος τμήματος
(range)

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

52

Σελιδοποιημένη Τμηματοποίηση
Η μετατόπιση τμήματος d
περιέχει:
„ αριθμό σελίδας: p
„ μετατόπιση σελίδας: d’
„ Ο αριθμός σελίδας p
προστίθεται στη διεύθυνση
βάσης για να δώσει τον
αριθμό πλαισίου f.
„ Ο αριθμός πλαισίου f
συνδυάζεται με την
μετατόπιση σελίδας d’ για
να δώσει τη φυσική
διεύθυνση.
„

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

53

Πλεονεκτήματα Σελιδοποιημένης
Τμηματοποίησης
„
„

Μειώνει την εξωτερική κλασματοποίηση
Επιτρέπει μικρότερα πεδία διευθύνσεων
στις εντολές
Εξετάσεις 2002 – Θέμα 2

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

54

Αριθμητικά συστήματα
B a se 1 0 B in a r y O c ta l H e x a d e c im a l

22/4/2007

0

0000

0

0

1

0001

1

1

2

0010

2

2

3

0011

3

3

4

0100

4

4

5

0101

5

5

6

0110

6

6

7

0111

7

7

8

1000

10

8

9

1001

11

9

10

1010

12

A

11

1011

13

B

12

1100

14

C

13

1101

15

D

14

1110

16

E

15

1111

17

F

ΤΟΜΟΣ_Β'-Ch4-5

55

Μετατροπές αριθμητικών συστημάτων
ƒ

δυαδικό Å Æ οκταδικό
ƒ

ƒ

ƒ

δυαδικό Å Æ δεκαεξαδικό
ƒ

ƒ

ƒ

Ανά τρία bit, σχηματίζεται ένα ψηφίο του
οκταδικού (ξεκινώντας από το LSB)
Κάθε ψηφίο στο οκταδικό, σχηματίζει τρία bit
Ανά τέσσερα bit, σχηματίζεται ένα ψηφίο του
δεκαεξαδικού (ξεκινώντας από το LSB)
Κάθε ψηφίο στο δεκαεξαδικό, σχηματίζει τρία bit

οκταδικό Å Æ δεκαεξαδικό
ƒ

22/4/2007

Μέσω του δυαδικού
ΤΟΜΟΣ_Β'-Ch4-5

56

Άσκηση: Τμηματοποιημένη
σελιδοποίηση
Θεωρείστε μία λογική διεύθυνση των 36 bits σε ένα σύστημα διαχείρισης
μνήμης με Τμηματοποιημένη Σελιδοποίηση (segmented paging).
Σε αυτή τη διεύθυνση:
„
„
„

τα 4 πιο αριστερά bits ορίζουν τον αριθμό τμήματος του πίνακα σελίδων,
τα επόμενα 10 σηματοδοτούν τη μετατόπιση στο συγκεκριμένο τμήμα,
τα υπόλοιπα 22 προσδιορίζουν τη λέξη μέσα στη σελίδα.

απαντήστε αιτιολογημένα στις ακόλουθες ερωτήσεις:
„
„
„

„
„

Ποιο είναι το μέγεθος σελίδας του συστήματος σε λέξεις;
Ποιο είναι το μέγιστο μέγεθος τμήματος ενός πίνακα σελίδων σε θέσεις;
Ποιος είναι ο μέγιστος αριθμός σελίδων που μπορεί να υποστηρίξει το
σύστημα;
Ποιος είναι ο μέγιστος αριθμός τμημάτων ενός πίνακα σελίδων;
Ποιο είναι το μέγιστο μέγεθος λογικού προγράμματος που μπορεί να
υποστηρίξει το σύστημα σε λέξεις;

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

57

Άσκηση: Τμηματοποιημένη
σελιδοποίηση
Θεωρείστε μία λογική διεύθυνση των 36 bits σε ένα σύστημα διαχείρισης
μνήμης με Τμηματοποιημένη Σελιδοποίηση (segmented paging).
Σε αυτή τη διεύθυνση:
„
„
„

τα 4 πιο αριστερά bits ορίζουν τον αριθμό τμήματος του πίνακα σελίδων,
τα επόμενα 10 σηματοδοτούν τη μετατόπιση στο συγκεκριμένο τμήμα,
τα υπόλοιπα 22 προσδιορίζουν τη λέξη μέσα στη σελίδα.

απαντήστε αιτιολογημένα στις ακόλουθες ερωτήσεις:
„
„
„

„
„

Ποιο είναι το μέγεθος σελίδας του συστήματος σε λέξεις; 222
Ποιο είναι το μέγιστο μέγεθος τμήματος ενός πίνακα σελίδων σε θέσεις; 210
Ποιος είναι ο μέγιστος αριθμός σελίδων που μπορεί να υποστηρίξει το
σύστημα; 24 x 210 = 214
Ποιος είναι ο μέγιστος αριθμός τμημάτων ενός πίνακα σελίδων; 24
Ποιο είναι το μέγιστο μέγεθος λογικού προγράμματος που μπορεί να
υποστηρίξει το σύστημα σε λέξεις; 24 x 210 x 222 = 236

22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

58

Άσκηση: Τμηματοποιημένη
σελιδοποίηση (συνέχεια…)
(ii) Εστω ότι δίνονται τα ακόλουθα στοιχεία:
„
„

„

„

„

η λογική διεύθυνση 7000222222228
στις τελευταίες 2 θέσεις του Πίνακα Τμημάτων της
διεργασίας περιέχονται οι διευθύνσεις βάσης ‘Α’ και ‘Β’
αντίστοιχα
στις θέσεις Α, Α+1, Α+2 του Πίνακα Σελίδων Α
περιέχονται αντίστοιχα οι αριθμοί 11168, 77018, 34118,
στις θέσεις Β, Β+1, Β+2 του Πίνακα Σελίδων Β
περιέχονται αντίστοιχα οι αριθμοί 17778, 66008, 04018

Ποια είναι η ‘φυσική’ διεύθυνση (οκταδικό) που
αντιστοιχεί στην παραπάνω λογική;
22/4/2007

ΤΟΜΟΣ_Β'-Ch4-5

59

Άσκηση: Τμηματοποιημένη
σελιδοποίηση
Ποια είναι η ‘φυσική’ διεύθυνση (οκταδικό) που αντιστοιχεί στην παραπάνω λογική;

A

0

1116

7000222222228 =

7701

1110000000000100100100100100100100102

3411

Αριθμός τμήματος = 11102 = Ε16
Βάση πίνακα σελίδων: Α

D
E

A

F

B
Πίνακας τμημάτων

22/4/2007

B

Μετατόπιση: 00000000012 = 1
Θέση στον πίνακα σελίδων: Α+1

1777

Αριθμός πλαισίου: 77018 (1111110000012)

6600
0401

Μετατόπιση στο πλαίσιο:
00100100100100100100102

Φυσική διεύθυνση: 1760222222228

Τμήματα
πίνακα
σελίδων

ΤΟΜΟΣ_Β'-Ch4-5

60

Sign up to vote on this title
UsefulNot useful

Master Your Semester with Scribd & The New York Times

Special offer: Get 4 months of Scribd and The New York Times for just $1.87 per week!

Master Your Semester with a Special Offer from Scribd & The New York Times