Vés al contingut

Àrea de memòria alta

De la Viquipèdia, l'enciclopèdia lliure
No s'ha de confondre amb Àrea de memòria superior.
L'àrea de memòria alta (HMA), són els primers 64 KB - 16 octets de la memòria estesa, just per dalt d'1 MB.

L'àrea de memòria alta (en anglès High Memory Area, HMA) és l'àrea de la memòria RAM que consisteix en els primers 64 kilobytes (KB), menys 16 bytes de memòria estesa en un IBM PC o un micro compatible.

Per un petit error de disseny, el microprocessador Intel 80286 i els processadors subsegüents poden de fet adreçar en el mode real 17 × 64 KB menys 16 octets de memòria (des de 0000:0000 fins FFFF:FFFF (equivalent a l'adreça de memòria FFFF0+FFFF = 10FFEF escrit en notació de segment de memòria del PC amb nombres hexadecimals, que és el mateix que 1 MB+64 KB - 16 bytes. En els processadors Intel 8086 i 8088, incapaços gestionar més d'1 megabyte de memòria, l'adreçament "donava una volta circular", és a dir, l'adreça FFFF:0010 era equivalent a l'adreça 0000:0000 .

Per permetre córrer en els nous ordinadors IBM AT els programes de MS-DOS existents que depenien d'aquesta característica, IBM va afegir un circuit especial a la targeta mare per simular la volta circular de l'adreçament dels processadors anteriors. Aquest circuit era una porta lògica AND que podia desconnectar la línia de direcció A20 del microprocessador de la resta de la targeta mare. Aquesta porta podia ser controlada inicialment a través del controlador del teclat, per permetre executar programes que desitgessin tenir accés a la memòria RAM sencera.

Els anomenats A20 handlers podien controlar el mode d'adreçament dinàmicament, permetent d'aquesta manera que els programes corrent en mode real es carreguessin a si mateixos en la regió dels 1024-1088 KB. Entre els productes de Microsoft, el primer en utilitzar el HMA va ser el Windows/286 2.1 de 1988, que va introduir el driver de dispositiu HIMEM.SYS. Començant amb les versions 5.0 del DR-DOS (1990) i de MS-DOS (1991), parts del sistema operatiu també es podien carregar a la zona HMA, alliberant fins a 46 KB de memòria normal. Altres components, com els controladors de dispositiu i TSRs, es podien carregar a l'àrea de memòria superior.

Vegeu també

[modifica]