Udvidet hukommelse ( engelsk expanded memory ) er et hardware-softwaresystem, der giver adgang til DOS-applikationer til hukommelse , der ikke er tilgængelig via hovedhukommelsens adresserum . Udvidet hukommelse sideadresseres gennem et "vindue" placeret i det øvre reserverede hukommelsesområde ( UMA ). Expanded Memory Specification (EMS ) blev udviklet i 1984 i fællesskab af Lotus Software , Intel og Microsoft , så forkortelsen LIM EMS er almindelig. Fra slutningen af 1980'erne til midten af 1990'erne blev EMS meget brugt i spil og kommercielle applikationer, men med fremkomsten af XMS-specifikationer blev det mindre brugt.
IBM PC/XT kører i real mode , som har 1 MB adresseplads til rådighed. IBM besluttede at bruge 640 KB til hovedhukommelsen og reserverede de resterende 384 KB til ROM og yderligere enheder (se: UMA ).
Men som regel er ikke hele UMA involveret, så der kan tildeles et vindue i den til paging-adgang til hukommelse, der ligger uden for det tilgængelige adresserum. Et elektronisk kredsløb under styring af driverprogrammet skifter siderne i denne hukommelse på en sådan måde, at kun én side vises i vinduet til enhver tid, og resten er utilgængelige.
Oprindeligt blev et 64 KB vindue tildelt, senere blev kontrolskemaet ændret: vinduesstørrelsen kunne ændres afhængigt af det specifikke system, og flere sider kunne vises i det på samme tid.
Oprindeligt var udvidet hukommelse baseret på udvidelseskort, der blev installeret i ISA -slots. Disse kort indeholdt både selve hukommelsen og styrekredsløbene. De mest almindelige kort i 1980'erne var AST RAMpage, IBM PS / 2 80286 Memory Expansion Option, AT&T Expanded Memory Adapter og Intel Above Board.
Senere på bundkort baseret på 80286-processorer var der et sted at installere chips og hukommelsesmoduler. EMS-kontrolkredsløbet var også på bundkortet. I BIOS-opsætningen af sådanne boards kunne man vælge, hvor meget hukommelse der skulle stilles til rådighed via EMS, resten forblev tilgængelig som ekstra hukommelse .
Med fremkomsten af 80386-processoren , som har en indbygget memory manager, blev det muligt udelukkende at efterligne EMS i software.
De mest berømte EMS-managere er Quarterdeck EMM og Qualitas 386MAX. Qualitas 386MAX blev senere inkluderet i MS-DOS 4.01 som EMM386.SYS .