La mémoire sous DOS
La mémoire conventionnelle.
DOS ne permet par défaut que l'utilisation des premiers 640 Ko de toute la mémoire disponible. Cette partie est appélée "MEMOIRE CONVENTIONELLE"

La mémoire supérieure.
Entre 640 Ko et 1024 Ko se trouve une zone de 384 Ko appelée "MEMOIRE SUPERIEURE". Ou encore UMA pour Upper Memory Area ou encore UMB pour Upper Memory Blocks.
Jusqu'au processeur 80286, seul le premier méga de mémoire est adressable. Le bus d'adresse allant de A0 à A20. Soit 20 lignes d'adressage. Ce qui donne :

2^20=1048576 zones de mémoire disponibles.

Si une case mémoire équivaut à un octet, nous aurons 1024 ko ou encore 1 Mo.

La mémoire étendue.
Au delà de 1 Mo nous aurons la zone de la "MEMOIRE ETENDUE" ( XMS pour eXtended Memory Specification)

Le processeur 286 gère un bus d'adresse mémoire sur 24 lignes

--> 16 Mo

Du 386 et 486, le bus est passé à 32 lignes

--> 4 Go

Le Pentium est quand à lui passé à 36 lignes

--> 64 Go

Mais le DOS, et plus précisément HIMEM.SYS, ne pourra gérer que les
16 premiers Mo !!!

La mémoire haute.
Suite à un BUG apparu avec les processeurs 286 sur la ligne A20, une partie de cette mémoire étendue n'était plus accessible. Ces 64 Ko "perdus" sont appelés "MEMOIRE HAUTE".

Et voici un dessin qui illustre l'ensemble...

XMS = eXtended Memory Specification ( Mémoire étendue )
HMA = High Memory Area ( Mémoire haute )
UMB = Upper Memory Block ( blocs de mémoire supérieure )