Présentation de la mémoire |
La mémoire est une zone dans laquelle les programmes doivent être stockés pour pouvoir être exécutés.
Un ordinateur compatible PC peut posséder trois types de mémoire:
La mémoire conventionnelle |
La mémoire conventionnelle est la partie de la mémoire dans laquelle les programmes peuvent se charger sans instruction spécifique. sa taille varie suivant les systèmes de 256Ko à 640Ko (sur tous les ordinateurs récents: 386, 486, Pentium...).
La quantité de mémoire disponible est la mémoire qui reste pour les programmes après que le DOS se soit chargé en mémoire (c'est-à-dire le système lui-même ainsi que tous les gestionnaires de périphériques et toutes les commandes contenues dans les fichiers config.sys et autoexec.bat).
La mémoire étendue |
La mémoire étendue permet au système d'accéder à plus de mémoire. Ce type de mémoire est disponible sur les ordinateurs dotés d'un processeur de type 80286 ou supérieur.
Seules les adresses de la mémoire conventionnelle sont naturellement reconnues, pour acc&eadute;der à la zone de mémoire située au-delà des 640Ko les programmes ont besoin d'instructions spécifiques. C'est un programme qui se charge de gérer l'accès à la mémoire étendue, il empêche par exemple deux programmes d'utiliser simultanément la même plage de mémoire. On appelle ce programme "gestionnaire de mémoire étendue".
MS-DOs est livré en standard avec le gestionnaire de mémoire nommé
HIMEM.SYS (il est encore présent sur Windows 98). Il se déclare dans le config.sys
par la ligne:
DEVICE=chemin/himem.sys
où chemin représente le chemin d'accès au fichier
La mémoire paginée |
Un autre moyen d'accéder à la mémoire située au-delà des 640Ko consiste à utiliser de la mémoire paginée. Certains programmes (peu aujourd'hui) sont optimisés pour utiliser ce type de mémoire.
Tout comme la mémoire étendue, ce type de mémoire nécessite un programme pour la gérer, il est appelé "gestionnaire de mémoire paginée". Les programmes prévus pour utiliser ce type de mémoire ne peuvent pas l'utiliser directement: le gestionnaire de mémoire doit copier des segments de 16Ko (appelés pages) dans une zone (appelée segment de cadre) située en mémoire supérieure. Ce type de mémoire est apparu avant la mémoire étendue, cette mémoire est donc plus lent et ne permet l'utilisation que d'une portion limitée de mémoire à un instant donné.
La mémoire supérieure |
Beaucoup de systèmes disposent de 384Ko de mémoire supérieure HMA, High Memory Adresses), situés immédiatement après les 640Ko de mémoire conventionnelle. Cette zone de mémoire peut être utilisée par le matériel. Les zones non utilisées par le matériel sont appelées "blocs de zone de la mémoire supérieure" (UMB, upper memory blocks), ils permettent d'exécuter les programmes se servant de la mémoire paginée.