Pamięć wysoka

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj
Mapa pamięci w Systemie DOS

Pamięć wysoka (ang. high memory area, HMA) – obszar pamięci w procesorze 80286 i nowszych pracującymi trybie rzeczywistym rozpoczynający się od adresu fizycznego 1 MB i mający rozmiar 64 KB - 16 B. Wynika to z tego, że jeżeli maksymalny adres segmentowy 0xFFFF mnożymy przez 16 i dodajemy maksymalną wartość offsetu 0xFFFF to otrzymujemy maksymalny adres komórki jaką można zaadresować równy 0x10FFEF.

Jego istnienie jest skutkiem ubocznym istnienia w procesorach 80286 linii adresowej A20 (linie są numerowane od A0), przez co generowanie adresu fizycznego z adresu logicznego segment:offset powoduje pojawienie się na liniach adresowych procesora adresu przekraczającego granicę 1 MB pojemności pamięci, mimo pracy w trybie rzeczywistym procesora. Taki przypadek w procesorach 8086/8088 powoduje przejście do pierwszych komórek pamięci operacyjnej. W ten sposób uzyskany dodatkowy blok pamięci o rozmiarze prawie 64 KB wykorzystywany jest przez system MS-DOS do umieszczania buforów i sterowników urządzeń, dzięki czemu więcej pamięci konwencjonalnej może być przydzielone na potrzeby aplikacji.