EMM386
Deweloperzy | Microsoft , IBM , DR , Datalight , zespół FreeDOS |
---|---|
Pierwsze wydanie | 1988, 34–35 lat temu |
System operacyjny | MS-DOS , PC DOS , DR DOS , ROM-DOS , FreeDOS |
Platforma | Intel 80386 |
Typ | Rozszerzony menedżer pamięci, Command |
EMM386 to rozszerzony menedżer pamięci MS-DOS firmy Microsoft , PC DOS firmy IBM , DR-DOS firmy Digital Research i ROM-DOS firmy Datalight , który jest używany do tworzenia pamięci rozszerzonej przy użyciu pamięci rozszerzonej w procesorach Intel 80386 . We FreeDOS dostępny jest również plik EMM386.EXE .
Przegląd
EMM386.EXE może mapować pamięć na nieużywane bloki w górnym obszarze pamięci (UMA), umożliwiając sterownikom urządzeń i programom rezydentnym zakończenie i pozostanie „ładowanie wysokie”, zachowując konwencjonalną pamięć .
Technika ta prawdopodobnie pojawiła się po raz pierwszy wraz z rozwojem CEMM , dołączonego do Compaq MS-DOS 3.31 w 1987 r. Wersja Microsoftu pojawiła się po raz pierwszy, wbudowana, z Windows / 386 2.1 w 1988 r. I jako samodzielny EMM386.SYS z MS-DOS 4.01 w 1989 r. ; bardziej elastyczna wersja EMM386.EXE pojawiła się w MS-DOS 5.0 w 1991 roku.
wirtualny tryb 8086 procesora . To wymusza dostępy do pamięci wykonywane przez aplikacje DOS, aby przechodziły przez MMU procesora (wprowadzone w 386), a wpisy tablicy stron używane przez MMU są konfigurowane przez EMM386 w celu mapowania pewnych regionów w górnej pamięci na obszary pamięci rozszerzonej (uzyskiwane przez EMM386 poprzez menedżera pamięci rozszerzonej HIMEM.SYS ). Technika ta umożliwiła zarówno EMS (pamięć rozszerzona), jak i UMB - z których oba wydają się aplikacjom DOS-owym jako pamięć w górnym obszarze, ale w rzeczywistości są mapowane na fizyczne lokalizacje pamięci powyżej 1 MB.
Tymczasowo wyłącza się podczas sesji systemu Windows w trybie rozszerzonym 386 , a jądro trybu chronionego systemu Windows przejmuje jego rolę.
Windows używa API GEMMIS do przejęcia zarządzania pamięcią z EMM386.EXE. Globalna specyfikacja importu EMM (GEMMIS) jest obsługiwana za pośrednictwem dokumentu dostępnego dla wybranej liczby dostawców menedżerów pamięci („Specyfikacja importu stronicowania Windows/386”).
Tylko kilka menedżerów pamięci zaimplementowało API GEMMIS, niektóre z tych, które go zawierają to: EMM386.EXE, Quarterdeck QEMM , Qualitas 386MAX , Helix Netroom i DOSBox wbudowany w DOS . W szczególności brakuje menedżerów pamięci FreeDOS.
Wszystkie menedżery pamięci FreeDOS (HIMEMX.EXE, JEMM386.EXE, JEMMEX.EXE) nie implementują interfejsu API GEMMIS, a system Windows nie uruchamia się, gdy działa w połączeniu z JEMMxxx, ponieważ system Windows nie przejmuje roli zarządzania pamięcią. Windows ME , Windows 98 , Windows 95 , Windows for Workgroups 3.1x i Windows 3 .xx, wszystkie zakończą się niepowodzeniem, a JEMMxxx wyświetli:
Nie można uruchomić systemu Windows, gdy aktualnie zainstalowane oprogramowanie w trybie chronionym jest uruchomione.
Zamknij oprogramowanie działające w trybie chronionym, a następnie spróbuj ponownie. Może być konieczne ponowne uruchomienie komputera.
Dzięki JEMMxx możliwe jest uruchamianie systemów Windows 3.x i Windows for Workgroups 3.1x z ograniczonymi możliwościami, zmuszając system Windows do korzystania z trybu standardowego; tj. przy użyciu trybu chronionego 80286, a nie trybu rozszerzonego 80386. Wymagane są trzy warunki:
- ogranicz całkowity rozmiar XMS do 64 MB
- EMS musi być włączony, nie można użyć opcji NOEMS. Na przykład JEMMEX X2MAX=65422
- Windows działa tylko w trybie standardowym, WIN /S lub WIN /2
Należy zauważyć, że system Windows w trybie standardowym ma ograniczoną funkcjonalność, brakuje mu pamięci wirtualnej, pomija sekcję [386Enh] w pliku SYSTEM.INI, a żadne sterowniki urządzeń w [386Enh] nie są ładowane.
Historia
W pakiecie z | Data | Nazwa pliku | Wersja |
---|---|---|---|
MS-DOS 4.01 | listopad 1988 | EMM386.SYS | 4.00 |
Okna 3.0 | maj 1990 | EMM386.SYS | 4.10.0419 |
MS-DOS 5.0 | czerwiec 1991 | EMM386.EXE | 4.20.06x |
IBM PC DOS 5.0 | czerwiec 1991 | EMM386.EXE | 4.20.06x |
IBM PC DOS 5.02 | wrzesień 1992 | EMM386.EXE | 4.33 |
MS-DOS 5.00a | listopad 1992 | EMM386.EXE | 4.33 |
Okna 3.1 | kwiecień 1992 | EMM386.EXE | 4.44 |
Windows dla grup roboczych 3.1 | październik 1992 | EMM386.EXE | 4.44 |
MS-DOS 6.0 | marzec 1993 | EMM386.EXE | 4.45 |
IBM PC DOS 6.1 | czerwiec 1993 | EMM386.EXE | 4.45 |
MS-DOS 6.2 | wrzesień 1993 r | EMM386.EXE | 4.48 |
Okna 3.11 | listopad 1993 | EMM386.EXE | 4.48 |
Windows dla grup roboczych 3.11 | listopad 1993 | EMM386.EXE | 4.48 |
MS DOS 6.21 | marzec 1994 | EMM386.EXE | 4.48 |
IBM PC DOS 6.3 | kwiecień 1994 | EMM386.EXE | 4.48 |
MS-DOS 6.22 | czerwiec 1994 | EMM386.EXE | 4.49 |
IBM PC DOS 7.0 | kwiecień 1995 | EMM386.EXE | 4,50 |
IBM PC DOS 2000 | maj 1998 | EMM386.EXE | 4,50 |
Okna 95 | sierpień 1995 | EMM386.EXE | 4,95 |
Okna 98 | czerwiec 1998 | EMM386.EXE | 4,95 |
Zobacz też
- Górny obszar pamięci (UMA)
- Pamięć rozszerzona (XMS)
- Rozszerzona pamięć (EMS)
- Lista poleceń DOS-a