Vous êtes sur la page 1sur 26

Partie 3

SWAP
Abdellah EZZATI
PLAN

 Définition
 La différence entre le swap et la mémoire virtuelle
 Généralité sur la mémoire virtuelle
 Taille d’un espace d’échange
 Pourquoi ai-je besoin d’un espace d’échange
 Vérifier les espaces d’échange activé et leur niveau utilisation
 Créer un espace d’échange
 Activer/Désactiver l’utilisation du swap
 Définir une partition comme Partition d’échange
 La description de la structure du swap_info_struct
Définition

L'espace d'échange ou le swap est une partie de


votre disque dur qui sert d'extension à la mémoire
vive de votre ordinateur lorsqu'il n'y en a plus.
La différence entre la mémoire virtuelle et swap

 La mémoire virtuelle est la somme de la mémoire


physique (la RAM) et un espace sur disque
appelé swap.
Généralité sur la mémoire virtuelle

. Il repose sur l'utilisation de traduction à la volée des adresses


virtuelles, en adresses physiques de mémoire vive. La mémoire
virtuelle permet :

 une mémoire virtuelle de plus grande capacité que la mémoire RAM


disponible.

 de partager efficacement la mémoire entre plusieurs processus tout


en leur permettant d’utiliser les mêmes adresses virtuelles
 la base du fonctionnement des librairies partagées dans un système
Unix. Par exemple une seule copie physique de la librairie standard
est chargée en mémoire et tous les processus qui y font appel
utilisent les instructions se trouvant dans cette copie physique. Cela
permet de réduire fortement la consommation de mémoire lorsque
de nombreux processus s’exécutent simultanément, ce qui est
souvent le cas sur un système Unix.
Généralité sur la mémoire virtuelle

 Schéma de principe de
la mémoire virtuelle
Taille d’un espace d’échange

Votre ordinateur dispose de 1 Go de RAM ou


plus ?
 Allouez un espace d'échange de 1× à 1,5× la
taille de votre RAM ;
Votre ordinateur dispose de moins de 1 Go de
RAM ?
 Allouez un espace d'échange de 1,5× à 2× la
taille de votre RAM.
Pourquoi ai-je besoin d’un espace d’échange

 Utilisation de programmes exigeants en


ressources: Le système peut libérer des ressources en déplaçant de
telles pages mémoire vers un espace d'échange dans votre disque dur.

 Hibernation (mise en veille prolongée): conserve


votre système en l'état actuel lors de la mise hors-tension de votre ordinateur

 Circonstances imprévues: Disposer d'un espace d'échange


vous offre un sursis pour localiser le problème ou, à tout le moins, terminer
votre travail en cours.
Vérifier les espaces d’échange activé et leur niveau utilisation

combien nous avons de swap :


Créer un fichier d'échange

 Les fichiers d'échange ont quelques avantages par


rapport aux partitions d'échange.

-leur ajout ou suppression n'a pas d'impact sur la


table des partitions du disque dur.
- les fichiers d'échange sont exploités directement par le noyau
Linux.
Créer un fichier d'échange

 Utilisez fallocate pour réserver un bloc d'espace


disque à attribuer à votre espace d'échange
 Le paramètre -l indique la taille en octets qui doit être réservée pour l'espace
d'échange.
 Modifiez les permissions sur cet espace afin qu'il ne
soit directement lisible que par le système.
 Définissez ce fichier en tant qu'espace d'échange.
Pour ce faire, utilisez la commande mkswap

UUID une suite de caractères qui permet d'identifier de façon absolument sûre
chaque périphérique de stockage et partition.
 Activez la prise en charge de ce nouvel espace
d'échange. Utilisez la commande swapon
Modifier la ou les partitions d'échange
Modifier la ou les partitions d'échange

 Outils avec interface graphique


 mode graphique fournis avec Ubuntu : Gparted
 Il existe plusieurs outils en ligne de commande pour
gérer vos partitions, les plus connus
étant fdisk et cfdisk.
Activer/Désactiver l'utilisation du swap

Les commandes swapon/swapoff permettent


respectivement d'activer ou désactiver le swap sans
redémarrage du système.
Définir une partition comme partition
d'échange

 La commande mkswap permet de définir une


partition ou un fichier comme espace d'échange.
Optimiser son espace d'échange

 Puisque l'espace d'échange se trouve dans le disque dur,


ceci peut causer quelques problèmes de performances
dans un système l'utilisant massivement, car le système
peut essayer de lire et écrire à la fois des pages mémoire
dans l'espace d'échange et des fichiers situés ailleurs
dans le disque dur. Une manière de réduire cet effet de
compétition d'accès aux ressources du disque dur
consiste à fractionner l'espace d'échange sur plusieurs
disques durs physiques. Ainsi, l'espace d'échange étant
partagé entre plusieurs périphériques, la compétition
pour l'accès aux ressources est réduite – voire éliminée.
Décrire la zone swap

 Chaque zone de swap actif, que ce soit un


fichier ou une partition, a une
struct swap_info_struct décrivant la zone.
 Le swap_info_struct est déclarée comme suit dans < linux /
swap.h >:
 Flags /drapeaux C’ est un champ de bits avec deux
valeurs possibles. SWP_USED ou SWP_WRITEOK.
 swap_device il correspondant à la partition utilisée pour
cette zone de swap . Si la zone de swap est un fichier, c’est
NULL;
 sdev_lock c’est un semaphore qui permet de controller
le verouillage il est verrouillé et déverrouillé avec
swap_device_lock () et swap_device_unlock () ;
 swap_file Ce est une structure pour le fichier spécial réel qui est
monté en tant que zone d'échange. Ce champ est nécessaire pour
identifier le bon swap_info_struct quand detecter une zone de
swap;
 Swap_vfsmnt C’est objet correspondant à l'endroit où le
périphérique ou le fichier pour cette zone de swap sont stockées;
 swap_map Ce est un grand tableau avec une entrée pour
chaque entrée de swap.
 lowest_bit Ce est le plus bas possible fente libre
disponible dans la zone de swap
 highest_bit Ce est le plus haut possible fente disponible
dans cet espace d'échange.
 cluster_next Ce est le décalage de la prochaine série de
blocs à utiliser.
 prio Chaque zone de swap a une priorité qui est stocké dans ce
domaine. Par défaut, les priorités sont classés par ordre d'activation,
mais l'administrateur système peut également spécifier l'aide
du drapeau lorsque vous utilisez swapon ;
 pages comme certains créneaux sur le fichier d'échange peuvent être
inutilisable, ce champ stocke le nombre de pages utilisables dans la
zone de swap. Cela diffère de max dans cette fentes
marquéesSWAP_MAP_BAD ne sont pas comptés;
 max Ce est le nombre total d'emplacements dans cette zone de swap;
 Next Ce est l'indice dans la swap_info réseau de la prochaine zone
d'échange dans le système.

Vous aimerez peut-être aussi