Exercice 1 : Notions de cours
1) Référence au cours.
2) La fragmentation interne concerne les systèmes paginés, tandis que la fragmentation externe est typique des systèmes segmentés.
Exercice 2 : Segmentation
1) L'adresse physique se calcule en ajoutant l'adresse de base du segment au déplacement dans ce segment, mais uniquement si le déplacement est inférieur à la taille du segment moins un (le déplacement commence à 0) :
- (0:128) : déplacement valide (128 < 34). Adresse physique = base + déplacement = 540 + 128 = 668.
- (1:100) : déplacement valide (100 < 28). Adresse physique = base + déplacement = 1254 + 100 = 1354.
- (2:465) : déplacement invalide (465 > 328).
- (3:888) : déplacement valide (888 < 2048). Adresse physique = base + déplacement = 2048 + 888 = 2936.
- (4:100) : déplacement valide (100 < 200). Adresse physique = base + déplacement = 976 + 100 = 1076.
- (4:344) : déplacement invalide (344 > 200).
2) Non. Dans un segment de taille 200, les déplacements valides sont dans l'intervalle [0-199].
Exercice 3 : Pagination
1) L'espace d'adressage du processus correspond à l'espace virtuel formé par les pages. Avec 8 pages, sa taille est de 8 × 256 = 2048 mots.
2) Les cadres étant numérotés sur 3 bits, il y a 23 = 8 cadres. La taille d'un cadre équivaut à celle d'une page, donc la mémoire physique contient 8 × 256 = 2048 mots (soit 2 Ko).
3) La conversion d'une adresse virtuelle en adresse physique se fait comme suit :
- Calcul du numéro de la page et du déplacement dans cette page.
- Recherche dans la table des pages du cadre correspondant à cette page.
- L'adresse physique finale est obtenue en ajoutant le déplacement à l'adresse de début du cadre.
Voici les calculs pour les adresses demandées :
- 240 → 0 × 256 + 240 → page 0, déplacement 240. Cadre = 3. Adresse physique = 3 × 256 + 240 = 1008.
- 546 → 2 × 256 + 34 → page 2, déplacement 34. Cadre = 0. Adresse physique = 0 × 256 + 34 = 34.
- 1578 → 6 × 256 + 42 → page 6, déplacement 42. Cadre = 5. Adresse physique = 5 × 256 + 42 = 1322.
- 2072 est hors de l'espace d'adressage virtuel du processus (2048 mots).
4) 770 → 3 × 256 + 2 → page 3, déplacement 2. Cette page n'est pas en mémoire, donc une référence à cette adresse provoquera un défaut de page.
5) D'après la table des pages, cette page se trouve dans le cadre 010. L'adresse physique est obtenue en remplaçant les 4 bits de poids fort de l'adresse virtuelle par les 3 bits du numéro de cadre : 010 0000 0000 0111.
Exercice 4 : Segmentation paginée
| Segments | Pages | Cadres |
|---|---|---|
| S1 | 2 | 30 |
| S2 | 29 | |
| S3 | 112 |
Pour l'adresse 8212 = 2 × 4096 + 20 :
- Segment : S1.
- Page : 3.
- Déplacement : 20.
- Cadre : 0.
- Déplacement : 20.
- L'adresse physique est donc 0 × 4096 + 20 = 20 en décimal. En binaire (16 bits), cela donne 0000 0000 0001 0100 (4 bits pour le cadre, 12 bits pour le déplacement dans la page de 4 Ko).
Exercice 5 : Algorithmes de remplacement de pages
1) Liste des pages obtenue en divisant les adresses par 100 : 0, 1, 1, 5, 4, 3, 4, 0, 0, 0, 2, 3, 4.
2) Algorithme OPT :
| Requête | 0 | 1 | 1 | 5 | 4 | 3 | 4 | 0 | 0 | 0 | 2 | 3 | 4 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Cadre 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 2 |
| Cadre 2 | — | 1 | 1 | 1 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 |
| Cadre 3 | — | — | — | 5 | 5 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 |
| Défauts | X | X | X | X | X | X | X | X | — | — | — | — | — | — |
Algorithme FIFO :
| Requête | 0 | 1 | 1 | 5 | 4 | 3 | 4 | 0 | 0 | 0 | 2 | 3 | 4 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Cadre 1 | 0 | 0 | 0 | 0 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 2 | 2 | 2 |
| Cadre 2 | — | 1 | 1 | 1 | 1 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 |
| Cadre 3 | — | — | — | 5 | 5 | 5 | 5 | 5 | 0 | 0 | 0 | 0 | 0 | 0 |
| Défauts | X | X | — | X | X | X | X | — | — | — | — | X | — | — |
Algorithme LRU :
| Requête | 0 | 1 | 1 | 5 | 4 | 3 | 4 | 0 | 0 | 0 | 2 | 3 | 4 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Cadre 1 | 0 | 0 | 0 | 0 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 |
| Cadre 2 | — | 1 | 1 | 1 | 1 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 |
| Cadre 3 | — | — | — | 5 | 5 | 5 | 5 | 5 | 0 | 0 | 0 | 0 | 0 | 0 |
| Défauts | X | X | — | X | — | X | X | — | — | — | — | — | X | — |
Algorithme FINUFO :
| Requête | 0 | 1 | 1 | 5 | 4 | 3 | 4 | 0 | 0 | 0 | 2 | 3 | 4 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Cadre 1 | 0 | 1 | 1 | 1 | 1 | 4 | 4 | 4 | 4 | 4 | 4 | 1 | 1 | 1 |
| Cadre 2 | — | 0 | 0 | 0 | 0 | 3 | 3 | 3 | 3 | 3 | 3 | 0 | 0 | 0 |
| Cadre 3 | — | — | — | 5 | 5 |
Tags:
-Systèmes d’Exploitation
|