Vous êtes sur la page 1sur 5

Corrigé TD2

(Gestion de la mémoire)

1- Segmentation

a- First-fit Best-fit

Segments disponibles Segments disponibles


Requête 800 500 300 Requête 800 500 300

200 600 500 300 200 800 500 100


300 300 500 300 300 800 200 100
400 300 100 300 400 400 200 100
250 50 100 300 250 150 200 100
250 50 100 50 250 0 0 0

b-
Comme on n'a pas de données sur les besoins futurs en mémoire des processus, on ne peut pas trouver
de schéma optimal pour les algorithmes d'allocation mémoire

1
2- Allocation mémoire

Mémoire
1200
1100

1000 250 250 250

900
800

700 350 350 350 350

600
150
500 150 150
100 100 100 100
400

300

200 400 400 400 400 400 400 400 400

100

0
+400 +150 +350 -150 +100 +250 -350 +150

First-fit
2
2- Allocation mémoire (suite)

Mémoire
1200
1100

1000 250 250 250

900
800

700 350 350 350 350

600
150
500 150 150
100 100 100 100
400

300

200 400 400 400 400 400 400 400 400

100

0
+400 +150 +350 -150 +100 +250 -350 +150

Best-fit
3
2- Allocation mémoire (suite)

Mémoire
1200
1100

1000
100 100 100 100 100
900
800
350 350 350 350 150
700
600

500 250 250


150 150
400

300

200 400 400 400 400 400 400 400 400 400

100

0
+400 +150 +350 -150 +100 +250 -350 +250 +150
empilée dépilée

Worst-fit
4
3- Pagination
a- L'index primaire comporte 6 bits, donc la table comporte n 1 = 26 = 64 entrées ; de même n2 = 26 = 64
et n3 = 28 = 256. Comme chaque entrée occupe 4 octets, la table primaire occupe 256 octets, comme une table
secondaire et une table tertiaire occupe 1024 octets, soit 1 Ko.

b- L'espace compris entre 0 et 1500 Ko comporte 1500/4 = 375 pages ; il faut donc 2 tables tertiaires pour le décrire
(seules 375 - 256 = 119 premières entrées de la seconde table sont valides), et une table secondaire , dont seules
les 2 premières entrées sont valides.
L'espace compris entre 2 Go -100 ko et 2 Go comporte 25 pages et sa description nécessite une table tertiaire
et une table secondaire dont seule la dernière entrée est valide.
Soit 3 tables tertiaires et 2 tables secondaires, qui occupent 3 x 256 + 2 x 64 = 896 mots ( 960 si l'on compte
aussi la table primaire), ou encore 3584 (resp. 3840) octets.

c- t1 = 232 / 26 = 226 = 64 Mo, t2 = 226 / 26 = 220 = 1 Mo, t3 = 220 / 28 = 212 = 4 Ko.

Vous aimerez peut-être aussi