Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Support de Cours Se1 Chap4 - MV (2023-2024) VF

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 17

Université de Bejaia

Faculté des sciences exactes


Systèmes d’exploitation 1 (L2 Info, UAMB)

Département d’Informatique

SUPPORT DE COURS:

SYSTÈMES D’EXPLOITATION 1
(L2 Informatique)

Chargés de cours:
KHENOUS Lachemi
&
ATMANI Mouloud Année: 2023/2024
1
Systèmes d’exploitation 1 (L2 Info, UAMB)

Chapitre 4:
GESTION DE LA
MÉMOIRE VIRTUELLE

2
Chapitre 4: Gestion de la mémoire virtuelle
Systèmes d’exploitation 1 (L2 Info, UAMB)
1. INTRODUCTION
❖ La mémoire virtuelle (MV) est une extension de la mémoire centrale;
❖ La MV est implémentée grâce à l’utilisation d’une partie de la
mémoire secondaire (DD) comme une partie de la mémoire centrale;

Mémoire Partie du
RAM Virtuelle HDD

❖ Avec la mémoire virtuelle, il est possible d’exécuter un programme


qui n’est pas entièrement en mémoire centrale;
❖ Le degré de la multiprogrammation est largement augmenté avec la
mémoire virtuelle (utilisation de la partition ou fichier d’échange).3
Systèmes d’exploitation 1 (L2 Info, UAMB) Chapitre 4: Gestion de la mémoire virtuelle

2. Implémentation physique de la mémoire virtuelle

Les moyens et les appellations


des parties du HDD utilisées pour
la mémoire virtuelle se diffèrent
d’un système à un autre:
✓ Pour GNU/Linux, on l’appelle la
partition d’échange (swap);
✓ Pour Windows, on parle du
fichier d’échange (C:\pagefile.sys);
✓ Pour le MacOS, il utilise
n’importe quel espace libre du
disque dur comme un espace
d’échange.
4
Chapitre 4: Gestion de la mémoire virtuelle
Systèmes d’exploitation 1 (L2 Info, UAMB)
3. Implémentation logique de la mémoire virtuelle

Pagination à la demande (ou préchargement)


C’est la technique la plus répandue des implémentations de la MV
(swapping). Cette technique fonctionne ainsi:

❖ Une page n’est chargée en MC qu’à la suite d’une référence


(adresse logique) donnant lieu à un défaut de page.

❖ Lorsqu’une page est chargée à l’avance, avant toute référence à une


information qu’elle contient ; on dit qu’il y a pré-chargement.

❖ Quand la page référenciée n’est pas en MC (n’est pas encore


chargée), on dit qu’il y a un défaut de page.

❖Pour vérifier l’existence d’une page en MC, un bit de présence /


absence est ajouté à la table des pages;

5
Chapitre 4: Gestion de la mémoire virtuelle
❖ Si une page est demandée et la MC est saturée, une page victime
Systèmes d’exploitation 1 (L2 Info, UAMB)

doit être transférée vers la partition d’échange.

3.3. Schéma de la pagination à la demande HDD

SE
CPU
2 3 Swap
@ paginée

P d N° Bit
cadre Pr / Ab MC
1 1
No 0
5
6 0 4
0 Cadre libre ?
0
Table des pages

66
Chapitre 4: Gestion de la mémoire virtuelle
Systèmes d’exploitation 1 (L2 Info, UAMB)
3.3. Schéma de la pagination à la demande

1 Adresse qui fait référence vers la page P.

2 Si on a un défaut de page (page non présente en MC)

3 Trouver la page manquante dans la MS et un cadre libre en MC

4 Chargement de la page manquante

5 Mise à jour de la table de pages du processus

6 Reprise de l’instruction interrompue

Si aucun cadre de page n’est libre dans la MC


Le SE peut adopter différentes situations:

A. Terminer le processus; (solution à écarter)


B. Décharger l’ensemble des pages du processus;
C. Décharger une seule page de la MC : remplacement de page.
Chapitre 4: Gestion de la mémoire virtuelle
Systèmes d’exploitation 1 (L2 Info, UAMB)
3.4. Définitions relatives au pagination à la demande

Chaine de référence: c’est la liste des numéros des pages


référenciées par un programme durant son exécution.

Exemple d’une chaine de référence

Dans un système avec MV qui utilise la stratégie de la pagination à


la demande (taille d’une page est de 128 octets), l’exécution d’un
programme fait référence aux adresses suivantes: 131, 80, 401,432,
265, 420, 520, 105, 275, 314

La suite de référence est: 1, 0, 3, 3, 2, 3, 4, 0, 2, 2

Suite de références réduites (chaine): 1, 0, 3, 2, 3, 4, 0, 2


Chapitre 4: Gestion de la mémoire virtuelle
Systèmes d’exploitation 1 (L2 Info, UAMB)
Page propre: page qui n’a pas été modifiée depuis son chargement. Une
page propre possède une copie en MS et ne doit pas être sauvegardée
quand elle est victime.

Page sale: page qui a été modifiée depuis son chargement.

3.5. Techniques de remplacement des pages

1. Trouver la page manquante dans la mémoire secondaire pour la


charger.
2. trouver un cadre libre en mémoire centrale
a. Si le cadre, utiliser-le
b. Sinon
➢ utiliser un algorithme de remplacement qui sélectionne la
page victime.
➢ Recopié la page victime en MS et mettre à jour la table des
pages.
3. Charger la page désirée dans le cadre libre et mettre à jour la table
des pages.
4. Réactiver le processus interrompu.
9
Chapitre 4: Gestion de la mémoire virtuelle
Systèmes d’exploitation 1 (L2 Info, UAMB)
3.5. Algorithmes de remplacement de pages

✓ FIFO (First In First Out): le plus simple algorithme de remplacement


est FIFO. Dans ce cas, on associé à chaque page son temps de
chargement en mémoire. Quand une page doit être remplacée, la page
victime est la plus ancienne chargée.

✓ LRU (Least Recently Used): l’algorithme remplace la page la moins


récemment utilisée. C’est-à-dire, la page victime est celle qui n’a pas
été utilisée pendant longtemps.

✓ LIFO (Last In First Out): comme FIFO, on associé à chaque page son
temps de chargement en mémoire. Cependant, quand une page doit
être remplacée, la page victime est la dernière page chargée.

✓ LFU (Least Frequently Used) : l’algorithme remplace la page la moins


fréquemment utilisée.
Chapitre 4: Gestion de la mémoire virtuelle
Systèmes d’exploitation 1 (L2 Info, UAMB)
3.5. Algorithmes de remplacement de pages

✓ MFU (Most Frequently Used): l’algorithme remplace la page la


plus fréquemment utilisée.

✓ OPTIMAL (Algorithme de BELADY): l’algorithme choisit de


retirer de MC la page dont la période de temps jusqu'à la
prochaine référence est la plus longue. Il produit le plus petit
nombre de défauts de pages, mais impossible à réaliser, car il
nécessite la connaissance du futur. Cependant, il sert de norme
de comparaison pour les autres algorithmes.

Remarque: En cas d’égalité du paramètre utilisé par les politiques LFU,


MFU et OPTIMAL entre les pages chargées dans la
mémoire, la FIFO est appliquée.
Chapitre 4: Gestion de la mémoire virtuelle
Systèmes d’exploitation 1 (L2 Info, UAMB)
3.6. Anomalie de BELADY

❖ Souvent, quant le nombre de cadres de pages est grand, on aura


moins de défauts de page. Or, des fois ce n’est pas le cas. Ce
phénomène est connu sous « L’anomalie de BELADY »

❖ L'augmentation du nombre de cadres peut se traduire par


l’augmentation du nombre de défauts de page en utilisant l’algorithme
de remplacement de pages FIFO.

❖Exemple: Considérons la chaîne de référence suivante :

1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5.

➢Le nombre de défauts de pages pour 4 cadre est égal 10 alors


qu'une mémoire de 3 cadres provoque 9 défauts de pages. C’est un
résultats inattendu; il est connu sous le nom de l’anomalie de BELADY.
Chapitre 4: Gestion de la mémoire virtuelle
Systèmes d’exploitation 1 (L2 Info, UAMB)
Exemple pratique
Dans un système avec MV qui utilise la stratégie de la pagination à la
demande (taille d’une page est de 128 octets), l’exécution d’un programme
fait référence aux adresses suivantes: 131, 80, 401,432, 265, 420, 520,
105, 275, 314. Si nous disposons de trois cadres de pages:

1. Donner le nombre de défauts de pages si nous utilisons les


algorithmes de remplacement FIFO, LRU, LIFO, LFU et OPTIMAL.

Solution de l’exemple pratique

La suite de référence est: 1, 0, 3, 3, 2, 3, 4, 0, 2, 2

Suite de références réduites (chaine): 1, 0, 3, 2, 3, 4, 0, 2

NB: dans les algorithmes LFU et MFU on utilise la suite de


référence au lieu de la chaine réduite pour avoir le nombre de
références (nombre d’utilisation) de chaque page.
Chapitre 4: Gestion de la mémoire virtuelle
Systèmes d’exploitation 1 (L2 Info, UAMB)

Solution de l’exemple pratique

A. FIFO

1 0 3 2 3 4 0 2

1 1 1 2 2 2
0 0 0 4 4
3 3 3 0

B. LRU

1 0 3 2 3 4 0 2

1 1 1 2 2 0 0
0 0 0 4 4 4
3 3 3 3 2
Chapitre 4: Gestion de la mémoire virtuelle
Systèmes d’exploitation 1 (L2 Info, UAMB)
Solution de l’exemple pratique

C. LIFO

1 0 3 2 3 4 0 2

1 1 1 1 1 1 1
0 0 0 0 0 2
3 2 3 4 0

D. LFU

1 0 3 3 2 3 4 0 2 2

1 1 1 2 2 0 0
0 0 0 4 4 2
3 3 3 3 3
Chapitre 4: Gestion de la mémoire virtuelle
Systèmes d’exploitation 1 (L2 Info, UAMB)
Solution de l’exemple pratique

E. OPTIMAL

1 0 3 2 3 4 0 2

1 1 1 2 2
0 0 0 0
3 3 4

Algorithme de Nombre de défauts de page


remplacement de pages
FIFO 06
LRU 07
LIFO 07
LFU 07
OPTIMAL 05
Systèmes d’exploitation 1 (L2 Info, UAMB)

FIN DU
CHAPITRE 4

17

Vous aimerez peut-être aussi