- Memoria baja: son los primeros 64 KB de la memoria convencional. Normalmente en esta zona se carga el sistema operativo y los controladores de dispositivos. De los 640 KB de la memoria convencional, en la memoria baja se cargan:
- Aproximadamente los dos primeros KB están reservados por el sistema para almacenar la tabla de interrupciones, características,... para la gestión del sistema.
- Los siguientes 44 KB (o 88) están ocupados por las rutinas básicas que forman el núcleo de DOS (archivos io.sys y ms-dos.sys)
- Zona de tamaño variable según las especificaciones del archivo config.sys (los parámetros de config.sys serían buffers, fcbs, files, last drive, stacks,...)
- Controladores de dispositivos que se instalan mediante la orden device del archivo config.sys. Ejemplo de controladores de dispositivos: himen.sys, ansi.sys (control de monitor y teclado).
- Se carga el comand.com. El tamaño es entre 3-5KB.
- Se cargan los programas residentes, que por lo normal incluimos entre las líneas del archivo autoexec.bar (por ejemplo, doskey)
El resto de la memoria convencional queda libre para la ejecución de los programas DOS.
- Memoria superior: son los 384 KB comprendidos entre los 640 KB y los 1024 KB. Se usan para cargar programas del sistema, rutinas de inicialización y control, memoria de video, ROM-BIOS,... Esta memoria se divide en 6 segmentos de 64 KB. En los segmentos A y B se carga la memoria de video, en el último segmento se carga la ROM-BIOS y quedan libres los segmentos C, D y E.
A esta memoria también se le llama memoria reservada.
- UMB (Upper Memory Blocks): bloques de memoria superior. A partir de la versión 5.0 de MS-DOS es posible cargar en los segmentos centrales de la memoria superior (C, D y E) controladores de dispositivos y programas residentes de DOs, liberando así memoria convencional. Cuando ocupamos estos tres bloques se conocen como bloques de memoria superior.
- Memoria alta: también se conoce con las siglas HMA. Son los primeros 64 KB de memoria extendida (entre 1024 KB y 1088 KB). No la utilizan normalmente los programas. Podemos liberar memoria convencional para el uso de los programas moviendo el núcleo de DOS a la memoria alta, utilizando la entrada dos = high en el archivo config.sys, esto hará que el núcleo de DOs quede guardado en la memoria alta, liberando ese espacio de la memoria convencional.
- Memoria extendida: es la memoria por arriba de 1024 KB y fuera del rango de direcciones de DOS. Fue desarrollado por Lotus, Intel, Microsoft y Ast. Es propia de los procesadores 286 (Intel) o superiores, ya que los procesadoreds anteriores no pueden direccionar más de 1 MB. Requieren un administrador de memoria extendida. Se define en el config.sys mediante la instalación de himen.sys, lo que además permite utilizar los 64 KB de la memoria alta. Este controlador debe ir siempre al principio del archivo config.sys. Se le llama XMS (extended Memory Specification)
- Memoria expandida: se le llama EMS (Expanded Memory Specification): fue el truco más importante para resolver el problema de la memoria en DOs. Es una solución hardware y software que engaña al ordenador para que utilice memoria por arriba del MB. La utilización de esta memoria se realiza mediante un sistema que se llama mapeo. El mapeo consiste en coger 64 KB contiguos de los segmentos C. D y E de la memoria superior, lo que denominamos marco de página y se divide en 4 trozos de 16 KB llamados páginas físicas. Se intercambian el marco de página por cuatro páginas lógicas de memoria expandida.
Los inconvenientes de este método son: su velocidad al tener que trazar mapas de páginas y la mayor complicación para el programador al no poder utilizar datos contiguos mayores de 64 KB.
- Memoria shadow: es una técnica para optimizar la velocidad y consiste en traspasar las rutinas ROM-BIOS que están guardadas en una ROM a la memoria RAM, de forma que el sistema guarde velocidad.












0 comentarios:
Publicar un comentario