Information Technology Reference
In-Depth Information
13.4
SWAPPING DES PROCESSUS
L'opération de vidage ( swap-out ) d'un processus consiste à transférer sur disque
dans la zone de swap, l'ensemble des pages présentes en mémoire centrale de
l'espace d'adressage de ce processus. Le processus victime de l'opération de vidage
est un processus endormi (état bloqué) en attente d'une ressource pour la poursuite
de son exécution. L'intérêt de cette opération est de désengorger d'un seul coup la
mémoire centrale de pages inutiles plutôt que de le faire petit à petit par vol de
pages. Le vidage de processus peut être aussi déclenché en cas de situation de crise
au niveau de l'occupation de la mémoire centrale. L'opération inverse de swap-in
consiste à ramener les pages du processus depuis la zone de swap lorsque celui-ci
redevient actif.
Sous le système Unix, le processus système 0, premier processus créé lors du boot
du système, devient ensuite le processus swapper. Lorsqu'il est réveillé par le noyau,
le processus swapper examine les processus présents en mémoire centrale et trans-
fère ceux qui sont endormis depuis le plus longtemps. Par ailleurs, il examine égale-
ment les processus transférés dans la zone de swap et remonte en mémoire centrale
ceux qui sont devenus prêts et pour lesquels il existe suffisamment d'espace en
mémoire centrale.
13.5
CONCLUSION
L'allocation en partitions variables considère le programme comme un ensemble
d'adresses insécables. Ce type d'allocation pose un problème de fragmentation et
nécessite des opérations de compactage de la mémoire centrale.
La pagination découpe l'espace d'adressage du programme en pages et la
mémoire physique en cases de même taille. Une adresse générée par le processeur
est de la forme
. La table des pages du
processus permet de traduire l'adresse paginée en adresse physique.
La segmentation découpe l'espace d'adressage du programme en segments corres-
pondant à des morceaux logiques du programme. Une adresse générée par le proces-
seur est de la forme
<
numéro de page, déplacement dans la page
>
. La table des
segments du processus permet de traduire l'adresse segmentée en adresse physique.
<
numéro de segment, déplacement dans le segment
>
Remarque : Segmentation et pagination sont très souvent associées.
Lorsque le principe de la mémoire virtuelle est appliqué, les pages d'un processus
ne sont chargées en mémoire centrale que lorsque le processus y accède. Lorsqu'un
processus accède à une page non présente en mémoire centrale, il se produit un
défaut de page. La page manquante est alors chargée dans une case libre. Si aucune
case n'est libre, le système utilise un algorithme de remplacement de pages pour
choisir une case à libérer.
L'écroulement est la situation pour laquelle un ou plusieurs processus passent
plus de temps à paginer qu'à s'exécuter.
 
 
Search WWH ::




Custom Search