Groupe esaip 1 582692781
Gestion de la mémoire
Définitions ........................................................................................................................................... 2
Mémoire centrale ............................................................................................................................. 2
Unités de mesure : ........................................................................................................................... 2
Catégories de mémoires .................................................................................................................. 2
Gestion de la mémoire ....................................................................................................................... 4
Registres de protection mémoire ..................................................................................................... 4
Gestion de la mémoire physique ..................................................................................................... 4
Partitions de taille fixe ................................................................................................................ 4
Partitions de tailles variables ...................................................................................................... 5
Stratégie de placement ................................................................................................................ 6
Bilan provisoire .......................................................................................................................... 6
Mémoire virtuelle paginée ................................................................................................................... 7
Définitions ..................................................................................................................................... 7
Mémoire paginée- cadres de pages ............................................................................................. 7
Adresse virtuelle table des pages ............................................................................................. 7
Conséquences de l'adressage virtuel ............................................................................................... 8
Mémoire virtuelle ............................................................................................................................ 9
Algorithmes de remplacement de pages ............................................................................................ 10
Algorithme de remplacement de la page non récemment utilisée ................................................ 10
Algorithme de remplacement de page premier entré, premier sorti .............................................. 11
L'algorithme de remplacement de page de la seconde chance ...................................................... 11
L'algorithme de remplacement de page de l'horloge ..................................................................... 12
L'algorithme de remplacement de la page la moins récemment utilisée ....................................... 13
Définitions
Mémoire centrale
La mémoire centrale des ordinateurs est la mémoire accessible directement par le processeur.
Cette mémoire contient à la fois les instructions de programmes et les données manipulées par ces
programmes, que ces programmes soient des programmes utilisateurs ou des programmes systèmes.
La quantité de mémoire installable sur un ordinateur dépend de plusieurs paramètres :
l'espace maximum de mémoire accessible par le processeur (20 bits d'aédresse, 32 bits,
64bits ...)
la taille du bus système, c'est à dire le sous-ensemble de l'espace adressable effectivement
câblé sur la carte mère de l'ordinateur
les emplacements disponibles sur la carte mère pour l'insertion des "barrettes de mémoire"
le type de barrettes utilisées: si 3 emplacements sont disponibles, il est peut-être possible
d'installer 3x128 Mo ou 3x512 Mo
Unités de mesure :
La mémoire des ordinateurs se mesure en multiples de l'octets:
1 ko (kilo)
2 10 octets
1024 octets
1 Mo (méga)
2 20 octets
1024 Ko
1 Go (giga)
2 30 octets
1024 Mo
1 To (téra)
2 40 octets
1024 Go
Une adresse mémoire est l'adresse d'un octet en mémoire centrale (ou du premier octet d'une série
d'octets d'adresses successives). Chaque octet de la mémoire a une adresse.
Catégories de mémoires
La mémoire RAM (random access mémory) est ainsi nommée car le temps d'accès à l'un
quelconque des octets (choisi aléatoirement) est identique pour tous. Cette propriété n'est pas
vérifiée pour les données sur disque.
La mémoire centrale peut aussi comporter une partie de mémoire ROM (read only memory) qui a
surtout l'intérêt de ne pas être effacée lorsque l'ordinateur est mis hors tension. Un programme
d'amorçage en mémoire ROM est nécessaire au démarrage de l'ordinateur.
Les temps d'accès à la mémoire ROM sont en général plus long que pour la mémoire RAM,
il sera donc assez fréquent de recopier en mémoire RAM les informations de la mémoire
ROM pour améliorer les performances. Cette mémoire qui est comme "l'ombre de la
mémoire ROM" est quelquefois appelée "mémoire shadow"
Pour améliorer le temps d'accès aux données et instructions de la mémoire RAM, les processeurs
disposent en général sur d'une mémoire plus rapide mais en quantité plus limitée: la mémoire
cache. Cette mémoire contient les dernières informations utilisées par le processeur, et se révèle
utile parce que les programmes utilisent en général plusieurs fois les mêmes instructions et données
dans un brève période de temps.
Pour étendre la quantité de mémoire RAM on utilisera une partie de la mémoire de masse (en
général le disque dur) pour stocker des informations de la mémoire qui ne seront pas utiles aux
programmes actifs dans un horizon de temps limité. Cette mémoire s'appelle la mémoire d'échange
(en anglais swap). Ceci permettra de "récupérer" l'espace RAM qu'utilisaient ces données ou
instructions pour y enregistrer d'autres informations nécessaires aux programmes actuellement
actifs.
Gestion de la mémoire
Registres de protection mémoire
La gestion de la mémoire centrale est réalisée par le système d'exploitation et vise à fournir aux
applications l'espace de RAM nécessaire à leur exécution.
Un objectif supplémentaire mais tout aussi crucial est la protection des espaces mémoire des autres
applications, et du système d'exploitation lui-même, contre la lecture ou la modification des
données par un processus non autorisé.
En général un processus se verra allouer une espace de mémoire correspondant à des adresses
successives: il pourra ainsi utiliser toute adresse de mémoire entre une valeur minimale et une
valeur maximale; les autres adresses lui étant interdites.
Ce contrôle d'accès à la mémoire, pour être efficace, devra être réalisé par le processeur lui-même,
qui disposera de 2 registres définissant les limites des adresses mémoire autorisées. Ces registres
seront initialisés par l'ordonnanceur au moment où celui-ci active le processus.
Gestion de la mémoire physique
Partitions de taille fixe
Une des premières méthode de gestion de la mémoire a été de définir des espaces mémoire de
tailles fixes dans lesquelles seront installés les programmes d'application. Chaque programme a été
compilé avec des adresses absolues en mémoire (adresses des instructions ou adresses des
variables). Un programme ne peut donc être chargé que dans la partition pour laquelle il a été
compilé. On définira en général autant de files d'attentes de programmes qu'il y a de partitions. Une
partition ne peut contenir qu'un seul programme. Si le programme d'une partition se bloque sur une
demande d'entrée/sortie, le système active le programme d'une autre partition.
Partitions de tailles variables
La méthode précédente utilisait mal la mémoire car les programmes ne remplissaient pas en général
la partition qui leur était allouée, sans que cet espace restant puisse être utilisé par un autre
programme.
Deux évolutions majeures vont permettre de mieux gérer la mémoire:
La génération de code relogeable par les compilateurs, associée à des chargeurs de code relogeable
permettra de charger un programme à une adresse quelconque en mémoire.
La définition de partitions de taille variable permettra d'adapter la taille des partitions aux besoins
réels des programmes.
1 / 13 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !