- Área de memoria alta
-
El área de memoria alta o High Memory Area (HMA) es el área del RAM que consiste en los primeros 64 kilobytes (KB), menos 16 bytes de memoria extendida en un IBM PC o un microcomputador compatible.
Por un pequeño error de diseño, el microprocesador Intel 80286 y los procesadores subsecuentes pueden de hecho direccionar en modo real 17×64 KB menos 16 bytes de memoria (desde
0000:0000
hastaFFFF:FFFF
(equivalente a la dirección de memoriaFFFF0 + FFFF = 10FFEF
), escrito en notación de segmento de memoria del PC con números hexadecimales), ó lo que es lo mismo que 1 MB + 64 KB - 16 bytes. En los procesadores Intel 8086 y 8088, incapaces manejar más de 1 megabyte de memoria, el direccionamiento "daba una vuelta circular", es decir, la direcciónFFFF:0010
era equivalente a la dirección0000:0000
.Para permitir correr en los nuevos computadores IBM AT los programas de MS-DOS existentes que dependían de esta característica, IBM agregó un circuito especial en la tarjeta madre para simular la vuelta circular del direccionamiento de los procesadores anteriores. Este circuito era una puerta lógica AND que podía desconectar la línea de dirección A20 del microprocesador del resto de la tarjeta madre. Esta puerta podía ser controlada inicialmente a través del controlador del teclado, para permitir correr programas que desearan tener acceso al RAM entero.
Los llamados A20 handlers podían controlar el modo de direccionamiento dinámicamente, permitiendo de esta manera que los programas corriendo en modo real se cargaran a sí mismos en la región de los 1024-1088 KB. Entre los productos de Microsoft, el primero en usar el HMA fue el Windows/286 2.1 de 1988, que introdujo el driver de dispositivo HIMEM.SYS. Comenzando con las versiones 5.0 del DR-DOS (1990) y el MS-DOS (1991), partes del sistema operativo también se podían cargar en HMA, liberando hasta 46 KB de memoria convencional. Otros componentes, como drivers de dispositivo y TSRs, se podían cargar en el área de memoria superior.
Véase también
- Modo irreal
- Memoria convencional
- área de memoria superior
- Memoria extendida
- Especificación de memoria extendida
- Especificación de memoria expandida
Este artículo (o una versión anterior) está basado originalmente en material de Free On-line Dictionary of Computing, utilizado con permiso. Actualícelo a discreción.
Categoría:- Arquitectura de memoria en los IBM PC y compatibles
Wikimedia foundation. 2010.