Rozszerzona pamięć - Extended memory

Z Wikipedii, wolnej encyklopedii

Pamięć rozszerzona znajduje się powyżej 1 MB.

W pamięć wysoka , rozszerzoną pamięć odnosi się do pamięci powyżej pierwszego megabajta (2 20 bajtów) przestrzeni adresowej w IBM PC lub kompatybilny z 80286 lub nowszym procesorem . Termin jest używany głównie w systemach operacyjnych DOS i Windows . Programy DOS, działające w trybie rzeczywistym lub wirtualnym trybie x86 , nie mają bezpośredniego dostępu do tej pamięci, ale są w stanie to zrobić za pośrednictwem interfejsu programowania aplikacji zwanego rozszerzoną specyfikacją pamięci (XMS). To API jest implementowane przez sterownik (taki jak HIMEM.SYS ) lub system operacyjny, który zajmuje się zarządzaniem pamięcią i kopiowaniem pamięci między pamięcią konwencjonalną i rozszerzoną, poprzez tymczasowe przełączenie procesora w tryb chroniony . W tym kontekście termin „pamięć rozszerzona” może odnosić się albo do całości pamięci rozszerzonej, albo tylko do części dostępnej za pośrednictwem tego API.

Dostęp do rozszerzonej pamięci można również uzyskać bezpośrednio przez programy DOS działające w trybie chronionym przy użyciu VCPI lub DPMI , dwie (różne i niekompatybilne) metody korzystania z trybu chronionego w DOS.

Pamięci rozszerzonej nie należy mylić z pamięcią rozszerzoną (EMS), wcześniejszą metodą rozszerzania pojemności pamięci komputera IBM PC powyżej 640 kB (655360 bajtów) przy użyciu karty rozszerzeń z modułami pamięci z przełączaniem banku . Ze względu na dostępną obsługę rozszerzonej pamięci w popularnych aplikacjach opracowano sterowniki urządzeń, które emulują pamięć rozszerzoną przy użyciu pamięci rozszerzonej. Później opracowano dwie dodatkowe metody umożliwiające bezpośredni dostęp do niewielkiej części rozszerzonej pamięci z trybu rzeczywistego. Te obszary pamięci są nazywane obszarem wysokiej pamięci (HMA) i górnym obszarem pamięci (UMA; określane również jako górne bloki pamięci lub UMB).

Przegląd

Na komputerach z procesorem x86 pamięć rozszerzona jest dostępna tylko w przypadku procesora Intel 80286 lub nowszego. Tylko te układy mogą adresować więcej niż 1 megabajt pamięci RAM . Wcześniejsze 8086 / 8088 procesory mogą korzystać z więcej niż 1 MB pamięci RAM jeśli zatrudnia specjalnego sprzętu , aby części z selekcyjne to pojawiają się adresy poniżej 1 MB.

Na 286 lub lepszym komputerze PC wyposażonym w więcej niż 640 kB pamięci RAM, dodatkowa pamięć byłaby generalnie odwzorowywana powyżej granicy 1 MB, ponieważ architektura IBM PC rezerwuje adresy od 640 kB do 1 MB dla systemowej pamięci ROM i urządzeń peryferyjnych.

Pamięć rozszerzona nie jest dostępna w trybie rzeczywistym (z wyjątkiem niewielkiej części zwanej obszarem dużej ilości pamięci ). Tylko aplikacje działające w trybie chronionym mogą bezpośrednio korzystać z pamięci rozszerzonej. Nadzorujący system operacyjny w trybie chronionym , taki jak Microsoft Windows, zarządza dostępem aplikacji do pamięci. Procesor udostępnia tę pamięć za pośrednictwem globalnej tablicy deskryptorów (GDT) i jednej lub większej liczby lokalnych tablic deskryptorów (LDT). Pamięć jest „chroniona” w tym sensie, że segmenty pamięci przypisane do deskryptora lokalnego nie mogą być dostępne dla innego programu, ponieważ ten program używa innego LDT, a segmenty pamięci przypisane do globalnego deskryptora mogą mieć ograniczone prawa dostępu, powodując wyjątek procesora (np. , ogólny błąd ochrony lub GPF) przy naruszeniu. Zapobiega to wzajemnemu zakłócaniu pamięci przez programy działające w trybie chronionym.

System operacyjny działający w trybie chronionym, taki jak Microsoft Windows, może również uruchamiać programy w trybie rzeczywistym i zapewniać im rozszerzoną pamięć . DOS Protected Mode Interface (DPMI) stanowi metodę zalecaną przez Microsoft dla systemu DOS programu Dostęp rozszerzony pamięci pod wielozadaniowość środowiska.

Specyfikacja rozszerzonej pamięci (XMS)

Specyfikacja rozszerzonej pamięci ( XMS ) to specyfikacja opisująca użycie rozszerzonej pamięci IBM PC w trybie rzeczywistym do przechowywania danych (ale nie do uruchamiania w niej kodu wykonywalnego). Pamięć jest udostępniana przez oprogramowanie do zarządzania rozszerzoną pamięcią ( XMM ), takie jak HIMEM.SYS . Funkcje XMM są dostępne poprzez funkcję przerwania programowego 2Fh 4310h.

Wersja XMS 2.0, wydana w lipcu 1988 r., Pozwalała na maksymalnie 64 MB pamięci, w przypadku XMS w wersji 3.0 wielkość ta wzrosła do 4 GB (2 32 bajty). Aby rozróżnić możliwie różną ilość pamięci, która może być dostępna dla aplikacji, w zależności od wersji specyfikacji, dla której zostały opracowane, tę ostatnią można nazwać super rozszerzoną pamięcią ( SXMS ).

Menedżer rozszerzonej pamięci jest również odpowiedzialny za zarządzanie alokacjami w obszarze wysokiej pamięci (HMA) i górnym obszarze pamięci (UMA; określany również jako górne bloki pamięci lub UMB). W praktyce górny obszar pamięci będzie zapewniany przez menedżera rozszerzonej pamięci (EMM), po czym DOS będzie próbował je wszystkie alokować i samodzielnie nimi zarządzać.

Zobacz też

Bibliografia

Specyfikacje
Baza wiedzy Microsoft Knowledge Base
  • „Ogólny samouczek na temat różnych form pamięci” . Wsparcie . Microsoft .
  • „Przegląd funkcji zarządzania pamięcią w systemie MS-DOS” . Wsparcie . Microsoft .
  • „Microsoft Diagnostic Utility: Definicja SXMS” . Wsparcie . Microsoft .

Linki zewnętrzne