Arquitectura de Memoria en MS-DOS: Convencional, Superior y Extendida

Enviado por Comunidad Wikiteka y clasificado en Informática

Escrito el en español con un tamaño de 4,14 KB

Gestión de Memoria en MS-DOS

La gestión de la memoria en MS-DOS dependía de la versión del sistema operativo empleada y de la CPU disponible.

Los procesadores XT 8088 y 8086 gestionaban hasta 1 MB.

Los procesadores AT 286 gestionaban hasta 16 MB y los 386 hasta 4096 MB.

Tipos de Memoria en MS-DOS

Memoria Convencional (0 KB a 640 KB)

En ella se ejecutan los programas, por lo que es crucial gestionarla correctamente y liberar espacio cuando sea posible.

Estructura de la Memoria Convencional

Sistema Operativo (S.O.)

Contiene la tabla de interrupciones, las características del ordenador, etc. (Ocupa aproximadamente los primeros 2 KB).

Núcleo de MS-DOS

Los archivos principales son:

  • IO.SYS (en función de la versión del sistema)
  • MSDOS.SYS (en función de la versión del sistema)

Su tamaño es variable.

Archivos de Configuración y Controladores

El archivo CONFIG.SYS permite configurar el sistema y cargar controladores de dispositivo. Algunas directivas comunes son:

  • BUFFERS
  • FCBS
  • FILES
  • LASTDRIVE
  • STACKS

Algunos controladores cargados mediante la directiva DEVICE en CONFIG.SYS son:

  • ANSI.SYS
  • HIMEM.SYS
  • EMM386.EXE
  • RAMDRIVE.SYS
COMMAND.COM

Este es el procesador de órdenes o intérprete de comandos. Ocupa aproximadamente 4,8 KB.

Programas Residentes de Usuario

Programas que se cargan y permanecen en memoria, a menudo iniciados desde AUTOEXEC.BAT. Algunos ejemplos son:

  • KEYB
  • DOSKEY
  • FASTOPEN
  • PRINT
Memoria Libre

Este espacio, desde el final de los programas residentes hasta los 640 KB, es donde se cargan las aplicaciones del usuario.

El Núcleo de MS-DOS y el archivo COMMAND.COM se podían mover del principio de la memoria convencional para dejar más espacio libre entre los primeros 640 KB y poder introducir más aplicaciones de usuario. Estos archivos se cargarían entonces en la propia memoria libre o en las memorias superior o extendida.

Memoria Superior (640 KB a 1024 KB)

En esta área se almacenan rutinas de control y programas del sistema, así como la memoria de video y los marcos de página para la memoria expandida.

Estructura de la Memoria Superior

Memoria de Video

Aquí se almacena la información que se representará por la tarjeta gráfica y corresponde con los chips de memoria que tenga la tarjeta gráfica.

Marcos de Página (Memoria Expandida - EMS)

La Memoria Expandida (EMS) es una técnica de gestión de memoria que soluciona la limitación de 1 MB del MS-DOS. Mediante ella, se accede a memoria que está por encima de los 1024 KB (1 MB) mediante la creación en memoria superior de marcos de página o posiciones de memoria que se dividen en páginas. Un marco de página ocupa 64 KB y se divide típicamente en 4 páginas de 16 KB.

ROM BIOS

Aquí se colocan las instrucciones de la BIOS para las operaciones de Entrada/Salida del sistema.

El límite de la memoria superior está en los 1024 KB (1 MB).

Memoria Extendida (Por encima de 1024 KB)

MS-DOS, por sí mismo, no trabaja con direcciones por encima de 1 MB. Sin embargo, mediante técnicas como la Memoria Extendida (XMS), se puede acceder a este espacio.

Estructura de la Memoria Extendida

Memoria Alta (HMA) (1024 KB a 1088 KB)

Mediante comandos como DOS=HIGH en CONFIG.SYS, el Núcleo de MS-DOS se podía cargar aquí. Dependiendo de cómo estén estructurados CONFIG.SYS y AUTOEXEC.BAT, algunos controladores también se podían cargar en esta área.

Espacio Libre en Memoria Extendida

El espacio restante en la memoria extendida (por encima de la HMA) queda libre para cargar programas que soporten XMS.

Utilidades de Gestión de Memoria

Mediante el comando RAMDRIVE.SYS, por ejemplo, se podían crear unidades lógicas en la RAM que funcionaban a modo de disco extraíble y volátil.