Exercices sur les Systèmes d'Exploitation - Gestion de la Mémoire
Exercice 1
On dispose d’un espace adressable virtuel de 4 Go (adressable sur 32 bits), et d’un espace physique de 32 Mo (adressable sur 25 bits). Une page occupe 1 Ko (déplacement sur 10 bits). Quelle est la taille de la table des pages (en octet), sachant qu’une entrée de la table de pages contient 1 bit de présence et un numéro physique de la page ?
Exercice 2
Voici une table de pages :
| Page Virtuelle | Page Physique |
|---|---|
| 0 | 4 |
| 1 | 6 |
| 2 | 8 |
| 3 | 9 |
| 4 | 12 |
| 5 | 1 |
Sachant que les pages virtuelles et physiques font 1 Ko, quelle est l’adresse mémoire correspondant à chacune des adresses virtuelles suivantes, codées en hexadécimal : 142A et 0AF1 ?
Exercice 3
Analyse des algorithmes de pagination dans un système informatique.
A - Détailler les algorithmes FIFO et LRU
Expliquer les principes et mécanismes des algorithmes FIFO (First-In-First-Out) et LRU (Least Recently Used) pour la gestion de la mémoire virtuelle.
B - Suite des pages et défauts de pages
Au cours de son exécution, un programme accède successivement aux pages : 0, 1, 4, 2, 0, 1, 3, 0, 1, 4, 2, 3. Le système alloue un espace mémoire de 3 pages pour ce programme.
B.1 - Algorithme FIFO
Déterminer la suite des pages présentes en mémoire ainsi que le nombre total de défauts de pages avec l’algorithme FIFO.
B.2 - Algorithme LRU
Déterminer la suite des pages présentes en mémoire ainsi que le nombre total de défauts de pages avec l’algorithme LRU.
B.3 - Algorithme Optimal
Déterminer la suite des pages présentes en mémoire ainsi que le nombre total de défauts de pages avec l’algorithme Optimal.
B.4 - Algorithme FIFO avec 4 pages
Déterminer la suite des pages présentes en mémoire ainsi que le nombre total de défauts de pages avec l’algorithme FIFO et un espace mémoire de 4 pages.
B.5 - Algorithme LRU avec 4 pages
Déterminer la suite des pages présentes en mémoire ainsi que le nombre total de défauts de pages avec l’algorithme LRU et un espace mémoire de 4 pages.
Exercice 4
Un système utilise la pagination à la demande avec deux algorithmes distincts, A1 et A2. Au cours de son exécution, un programme accède successivement aux pages : 1, 5, 2, 5, 1, 4, 1, 5, 3. Le système alloue un espace mémoire de trois pages.
A - Identifier les algorithmes
À votre avis, quel algorithme correspond à FIFO et lequel correspond à LRU ? Justifiez votre réponse en analysant les suites de pages suivantes :
| Algorithme A1 | 1, 1, 1, 1, 1, 4, 4, 4, 3 |
|---|---|
| 5, 5, 5, 5, 5, 1, 1, 1 | |
| 2, 2, 2, 2, 2, 5, 5 | |
| Algorithme A2 | 1, 1, 1, 1, 1, 1, 1, 1, 1 |
| 5, 5, 5, 5, 5, 5, 5, 5 | |
| 2, 2, 2, 4, 4, 4, 3 |
B - Nombre de défauts de pages
Calculer le nombre total de défauts de pages pour chacun des algorithmes A1 et A2.
Exercice 5
Le système dispose de 4 cases mémoire, toutes occupées. Le tableau suivant donne, pour chacune d’elles, la date en microsecondes du chargement de la page, la date du dernier accès et l’état des indicateurs (Lecture et Modification) :
| Case | Chargement (µs) | Accès (µs) | Lecture (R) | Modification (M) |
|---|---|---|---|---|
| 0 | 126 | 279 | 0 | 1 |
| 1 | 230 | 260 | 1 | 1 |
| 2 | 120 | 272 | 1 | 1 |
| 3 | 160 | 280 | 1 | 1 |
En justifiant votre réponse, indiquer quelle sera la page remplacée pour chacun des algorithmes suivants : FIFO, LRU, NRU (Not Recently Used, ou seconde chance).
Questions Fréquentes (FAQ)
Qu’est-ce qu’un défaut de page dans les systèmes d’exploitation ?
Un défaut de page survient lorsqu’un programme tente d’accéder à une page qui n’est pas présente en mémoire physique et doit être chargée depuis le stockage secondaire (disque). Cela entraîne une interruption et un ralentissement du programme.
Comment fonctionne l’algorithme FIFO ?
L’algorithme FIFO (First-In-First-Out) remplace la page qui a été chargée en mémoire depuis le plus longtemps. Il est simple à implémenter mais peut moins optimiser les performances que d’autres algorithmes.
Quelle est la différence entre LRU et NRU ?
LRU (Least Recently Used) remplace la page qui n’a pas été utilisée depuis le plus longtemps, tandis que NRU (Not Recently Used) utilise des bits pour déterminer si une page a été récemment accédée ou modifiée, offrant une approche plus simple mais moins précise.