EMM386
Utvecklare | Microsoft , IBM , DR , Datalight , FreeDOS-teamet |
---|---|
Initial release | 1988, för 34–35 år sedan |
Operativ system | MS-DOS , PC DOS , DR DOS , ROM-DOS , FreeDOS |
Plattform | Intel 80386 |
Typ | Hanterare för utökat minne , Command |
EMM386 är den utökade minneshanteraren för Microsofts MS -DOS , IBM :s PC DOS , Digital Researchs DR -DOS och Datalights ROM -DOS som används för att skapa utökat minne med utökat minne på Intel 80386 - processorer. Det finns också en EMM386.EXE tillgänglig i FreeDOS .
Översikt
EMM386.EXE kan mappa minnet till oanvända block i det övre minnesområdet (UMA), vilket gör att drivrutiner och program för terminate-and-stay-resident kan "laddas högt", vilket bevarar konventionellt minne .
Tekniken dök antagligen först upp med utvecklingen av CEMM , som ingick i Compaq MS-DOS 3.31 1987. Microsofts version dök först upp, inbyggd, med Windows/386 2.1 1988 och som fristående EMM386.SYS med MS-DOS 4.01 1989 ; den mer flexibla versionen av EMM386.EXE dök upp i MS-DOS 5.0 1991.
Precis som de andra utökade minneshanterarna använder EMM386 processorns virtuella 8086-läge . Detta tvingar minnesåtkomster gjorda av DOS-applikationer att gå genom processorns MMU (introducerad i 386), och sidtabellsposterna som används av MMU är konfigurerade av EMM386 för att mappa vissa regioner i övre minnet till områden med utökat minne (erhållen av EMM386) genom den utökade minneshanteraren HIMEM.SYS ). Den här tekniken möjliggjorde både EMS (expanderat minne) och UMB - som båda verkar för DOS-applikationer vara minne i det övre området men är i själva verket mappade till fysiska minnesplatser över 1 MB.
Den stängs tillfälligt av under en Windows-session i 386 Enhanced- läge, där Windows skyddade lägeskärna tar över dess roll.
Windows använder GEMMIS API för att ta över minneshanteringen från EMM386.EXE. Global EMM Import Specification (GEMMIS) stöds via ett dokument som är tillgängligt för ett utvalt antal minneshanterare ("Windows/386 Paging Import Specification").
Endast ett fåtal minneshanterare implementerade GEMMIS API, några av de som inkluderar det är: EMM386.EXE, Quarterdeck QEMM , Qualitas 386MAX , Helix Netroom och DOSBox inbyggd DOS . Särskilt saknas är FreeDOS:s minneshanterare.
Alla FreeDOS-minneshanterare (HIMEMX.EXE, JEMM386.EXE, JEMMEX.EXE) implementerar inte GEMMIS API och Windows startar inte när det körs tillsammans med JEMMxxx eftersom Windows inte kan ta över minneshanteringsrollen. Windows ME , Windows 98 , Windows 95 , Windows for Workgroups 3.1x och Windows 3 .xx kommer alla att misslyckas med JEMMxxx som visar:
Kan inte köra Windows medan den för närvarande installerade programvaran i skyddat läge körs.
Avsluta programmet för skyddat läge och försök sedan igen. Du kan behöva starta om datorn.
Med JEMMxx är det möjligt att köra Windows 3.x och Windows for Workgroups 3.1x med begränsad kapacitet genom att tvinga Windows att använda standardläge; dvs använder 80286 Protected Mode, inte 80386 Enhanced Mode. Tre villkor krävs:
- begränsa totalt XMS till 64MB
- EMS måste vara aktiverat, kan inte använda NOEMS-alternativet. Till exempel JEMMEX X2MAX=65422
- Windows fungerar endast i standardläge, WIN /S eller WIN /2
Observera att Windows i standardläge är begränsad i funktionalitet, det saknar virtuellt minne, det hoppar över avsnittet [386Enh] i SYSTEM.INI och eventuella enhetsdrivrutiner i [386Enh] laddas inte.
Historia
Buntas med | Datum | Filnamn | Version |
---|---|---|---|
MS-DOS 4.01 | november 1988 | EMM386.SYS | 4.00 |
Windows 3.0 | maj 1990 | EMM386.SYS | 4.10.0419 |
MS-DOS 5.0 | juni 1991 | EMM386.EXE | 4.20.06x |
IBM PC DOS 5.0 | juni 1991 | EMM386.EXE | 4.20.06x |
IBM PC DOS 5.02 | september 1992 | EMM386.EXE | 4,33 |
MS-DOS 5.00a | november 1992 | EMM386.EXE | 4,33 |
Windows 3.1 | april 1992 | EMM386.EXE | 4,44 |
Windows för arbetsgrupper 3.1 | oktober 1992 | EMM386.EXE | 4,44 |
MS-DOS 6.0 | mars 1993 | EMM386.EXE | 4,45 |
IBM PC DOS 6.1 | juni 1993 | EMM386.EXE | 4,45 |
MS-DOS 6.2 | september 1993 | EMM386.EXE | 4,48 |
Windows 3.11 | november 1993 | EMM386.EXE | 4,48 |
Windows för arbetsgrupper 3.11 | november 1993 | EMM386.EXE | 4,48 |
MS-DOS 6.21 | mars 1994 | EMM386.EXE | 4,48 |
IBM PC DOS 6.3 | april 1994 | EMM386.EXE | 4,48 |
MS-DOS 6.22 | juni 1994 | EMM386.EXE | 4,49 |
IBM PC DOS 7.0 | april 1995 | EMM386.EXE | 4,50 |
IBM PC DOS 2000 | maj 1998 | EMM386.EXE | 4,50 |
Windows 95 | augusti 1995 | EMM386.EXE | 4,95 |
Windows 98 | juni 1998 | EMM386.EXE | 4,95 |
Se även
- Övre minnesområde (UMA)
- Utökat minne (XMS)
- Utökat minne (EMS)
- Lista över DOS-kommandon