QEMM
Utvecklare | Quarterdeck Office Systems |
---|---|
Stabil frisättning | QEMM 97 (aka v9.0) / 15 maj 1997
|
Operativ system | DOS |
Typ | DOS-minneshanterare |
Quarterdeck Expanded Memory Manager ( QEMM ) är en minneshanterare som producerades av Quarterdeck Office Systems i slutet av 1980-talet till slutet av 1990-talet. Det var den mest populära minneshanteraren från tredje part för MS-DOS och andra DOS- operativsystem .
QEMM produktsortiment
- QRAM
- En minneshanterare för Intel 80286 eller högre processorer . Den stöder Chips and Technologies- kretsuppsättningar . 2.02 har lagt till SHADOWRAM-switch. QEXT omfördelar korrekt eXtended Memory Specification (XMS). Den innehåller VIDRAM, Optimize, LOADHI från QEMM 6.02, Manifest 1.13. Tidigare versioner av QRAM stödde även de äldre 8086- och 8088- processorerna.
- QEMM Game Edition
- Det är en version av QEMM som inkluderar Quarterdeck GameRunner. Patchar för vanliga QEMM fungerar inte på QEMM Game Edition.
- QEMM MegaBundle
- I versionen som levereras med Borland SideKick för Windows är det en version med SideBar 1.00 (1994-08-22) och QEMM 7.5.
- DESQview 386
- Den inkluderar DESQview och QEMM-386.
Funktioner/verktyg
QEMM drivrutinen
QEMM ger åtkomst till Upper Memory Area (UMA) och minne genom Expanded Memory Specification (EMS), Extended Memory Specification (XMS), Virtual Control Program Interface (VCPI) och DOS Protected Mode Interface (DPMI).
- Snabbstart: Det tillåter en form av varm omstart eller lokal omstart utan att gå igenom BIOS . Det kommer därför att helt kringgå POST , inklusive BIOS-startskärmen och det tidskrävande minnestestet och enhetsuppräkningen, och bara återställa CPU-tillståndet och avbryta till sitt initiala tillstånd efter POST.
DOS-upp
Den flyttar DOS-kärnan, COMMAND.COM-tolken, DOS-resurser (t.ex. buffertar, filhandtag, stackar, lastdrive). Den stöder DOS 3.2 eller högre.
HOOKRAM
Det tillåter att drivrutiner laddas innan QEMM laddas och tillåter fortfarande användningen av QEMM:s Stealth-funktion.
MagnaRAM
Det var ett verktyg för virtuellt minneskomprimering för Windows 3.1, Windows For Workgroups och Windows 95. MagnaRAM ingår i QEMM 97.
MagnaRAM släpptes också som ett separat verktyg.
MagnaRAM fungerade genom att ersätta en del av Windows virtuella minnessystem . MagnaRAM skulle infoga sig själv i strängen av Windows-program som avgjorde vilka delar av RAM-minnet som kommer att flyttas till hårddisken. Istället för att skriva direkt till hårddisken skulle informationen som skulle skrivas gå till MagnaRAMs egen buffert då detta var en snabbare process. Under CPU inaktiv, skulle MagnaRAM komprimera informationen i sin egen RAM-buffert. När RAM-bufferten blir full byts den sedan till hårddisken och tar både mindre tid och mindre plats.
Manifestera
Manifest (MFT) är ett verktyg för hårdvaruinformation som visar information om användarens system.
- 1.11 fixade mindre kosmetiska buggar.
- 1.12 kan identifiera PS/2 Model 57SX, Compaq Deskpro 486s/16M, Sharp MZ-100. Tillgängligt EMS på skärmen Systemöversikt korrigerades när du använde Stealth.
- 1.13 fixat Award BIOS-identifikationsproblem.
- Version 2.0 ger information om nätverk, förbättrar rapportering av videofunktioner, APM, DPMI/VCPI/EMS/XMS-minne. Ny funktion inkluderar redigering av DOS- och Windows-startkonfigurationsfiler.
Optimera
I likhet med MEMMAKER är det ett verktyg som beräknar och låter användaren välja optimala ordningsföljder av laddningsdrivrutiner och TSR:er. OPTIMIZE tillåter dock att förhandsgranskning av justeringar görs utan omstart. Skickas med QEMM och DESQview.
QDPMI
QDPMI är en DPMI 0.9-serverdrivrutin, författad av Dan Spear. Det kräver 386 CPU och QEMM386.
QEMM 50/60
Det är en version av QEMM-drivrutinen för IBM PS/2 Model 50 och 60.
Version 4.03 stöder IBM Memory Expansion Option-kort med 2-8MB minne.
Smygande
Den kan flytta minne som tilldelats för CGA-teckenuppsättningen bort från UMA.
Från och med QEMM version 8 tillåter den att ROM-innehåll i UMA flyttas för att ge mer minne för TSR:er. Ytterligare Stealth Windows-kompatibilitet tillhandahålls med VxDs.
Stealth DoubleSpace/D*Space
Stealth D*Space gör att DoubleSpace eller DriveSpace kan laddas högt.
T386
Det gör att Toshibas bärbara datorer kan arbeta med QEMM:s EMS-hanterare.
VIDRAM
- Ger extra konventionellt minne i textlägesprogram, genom att återta buffertar i UMA som används i grafiklägen.
- Det kräver EGA/VGA-kompatibelt grafikkort.
- VIDRAM EMS stöder DMA-baserad videominnesåtkomst på bekostnad av EMS-minne för buffert.
Begränsningar
Gräns för enhetsdrivrutiner
LOADHI.SYS laddar upp till 1 enhetsdrivrutin åt gången i QEMM 4.23, 2 i QEMM 5, 32 i QEMM 6.
MagnaRAM-gräns
Maximal komprimeringströskelinställning är 100 % för alla versioner av MagnaRAM 2.00-2.02, förutom MagnaRAM 2.00 som ingår i QEMM 8.00, som har den maximala inställningen på 80 %.
Minnesgräns
- QEMM 5.0 kan hantera upp till 16 MB EMS, 16 MB XMS.
- QEMM 6.0 kan hantera upp till 64 MB EMS, 64 MB XMS.
- QEMM 6.02 kan hantera upp till 128 MB EMS, 128 MB XMS. EMBMEM (16-bitars) parametergräns togs bort.
- QEMM 7.0-7.03 kan hantera upp till 128 MB EMS, 128 MB XMS.
- QEMM 7.04, 7.5, 8.0-8.3 och 97 (alias QEMM 9.0) kan hantera upp till 256 MB EMS/XMS.
Som standard ger QEMM 7.04 och högre upp till totalt 64 MB RAM delat mellan XMS-, EMS- och VCPI-minnen, om inte parametern USERAM= används. Till exempel, för att tillåta åtkomst till upp till 256 MB EMS (eller 256 MB XMS), ange: QEMM386.SYS USERAM=1M-256M
För QEMM 7.04 och senare är det maximala adresserbara RAM-minnet 256 MB minne, delat mellan XMS-, EMS- och VCPI-minnen. Inledningsvis allokerar XMS hela 256 MB och delar det med EMS och VCPI efter behov, det vill säga när EMS och VCPI begär minnesblock, minskas det lediga XMS-minnet med samma mängd.
Optimera gräns
Versioner upp till QEMM 6.01 kan bearbeta batchfiler upp till 9KB och 20KB i QEMM 6.02.
Radgränsen för batchfil är 512 för QEMM-versioner upp till 6.02.
Stealth DoubleSpace/D*Space
Stealth D*Space stöder inte Windows 95 eller senare versioner av DriveSpace.
Versionshistorik
Ursprungligen hette produkten QEMM-386 (kräver en Intel 80386 och DOS 3.30 . ), och släpptes med en kompletterande produkt som heter QRAM (för användning på Intel 80286 och 8088). Suffixet 386 togs bort från och med QEMM version 7.0 1993, när Intel släppte Intel Pentium den 22 mars 1993. Den slutliga utgåvan döptes om till QEMM 97 för att följa Microsofts nya varumärkestrend att använda släppt år istället för versionsnummer, specifikt Windows 95 och Windows 95 OSR2.
QEMM-386 v4.2 (11 november 1988)
- Stöds Intel 80386 och DOS 3.30 .
- Medföljer QRAM för 80286 eller 8088 / 8086 datorer.
QEMM-386 v5.0 (januari 1990)
- Tillagt stöd för Intel 80486 , DOS 4.01 och Windows 3.0 .
- Maximalt RAM-minne är 16 MB XMS/16 MB EMS.
- LOADHI.SYS laddar nu 2 enhetsdrivrutiner åt gången.
- Nya QEMM-parametrar inkluderar COMPAQ386S (C386S).
QEMM-386 v5.11 (mitten av 1990)
- Tillagt stöd för Virtual DMA Services (VDS).
- Stöds för större minnescache.
QEMM-386 v6.0 (tidigt 1991)
- Tillagt stöd för DOS 5.00a och Windows 3.0a .
- Maximalt RAM-minne är 64MB XMS/64MB EMS.
- Nya funktioner inkluderar Stealth.
- Nya verktyg inkluderar HOOKRAM.
- LOADHI.SYS laddar nu 32 drivrutiner åt gången.
- Manifest uppdaterades till 1.10.
- QRAM uppdaterad till 2.02 för intel 80286 och intel 8088 system.
QEMM-386 v6.01 (mitten av 1991)
- QEMM stöder laddning av XMS-drivrutin före QEMM, kör Stealth i Windows 3.0 i 386 Enhanced-läge.
- Optimera stöd för indragna CALL-satser i batchfiler.
- Manifest uppdaterades till 1.11.
QEMM-386 v6.02 (13 november 1991)
- Stöder 2,88 MB diskettenheter.
- Nya Optimize-växlar inkluderar /COMMANDFILE (CMD), /LOADLOW (LOW), /QUICK (Q). Optimize stöder standardexklusionsfilen OPTIMIZE.EXC.
- Nya QEMM-parametrar inkluderar DISKBUFFRAME=xx (DBF), EXCLUDESTEALTHINT=xx (XSTI), SHADOWRAM=xxx (SH), UNMAPFREEPAGES=Y/N (UFP), WINSHRINKUMBS=N (WSU).
- Som standard är EMS avmappad när Stealth är aktivt.
- Optimize kan stödja batchfiler upp till 20KB.
- Gränsen på 64 MB togs bort från parametern EMBMEM (EMB).
- TESTBIOS 'Danny och Larry'-meddelanden togs bort.
- Manifest uppdaterades till 1.13.
- Vidram stöder nu system med över 640KB konventionellt minne, använder EMS som standard.
QEMM v7.0 (mitten av 1993)
Släppte suffixet 386 från namnet sedan Intel introducerade Pentium-processorn.
- Tillagt stöd för Intel Pentium , DOS 6.00 och Windows 3.10 .
- Maximalt RAM-minne är 128 MB XMS/128 MB EMS.
- QEMM skrevs om med 32-bitars kod.
- Nya funktioner inkluderar DOSDATA, DOS-Up, Stealth ROM, Stealth DoubleSpace.
- Nya verktyg inkluderar SWAPECHO.COM, OPTIMIZE.EXE (ersatt OPTIMIZE.COM), QDPMI (Quarterdeck DPMI 0.9-värd), QSETUP (QEMM Setup för Windows), SCANMEM.COM (USERAM= minnesskanner).
- Uppdaterade verktyg inkluderar Manifest 2.0. Lägg till stöd för Virtual Mode Extensions och Page Size Extensions som finns i Pentium, senare Intel 80486 eller senare processorer; Bus-Mastering hårddiskar. Förbättrad adapter-RAM-detektion.
- Lagt till stöd för att läsa qemm-konfigurationsfilen @filnamn.
- Lagt till stöd för DOS 6.00 Multi-Config i CONFIG.SYS, IF-satser i AUTOEXEC.BAT.
- Optimize stöder programvara för diskkomprimering.
- Vidram kan nu fungera i Windows Enhanced-läge DOS-fönster.
- QEMM 7.0x laddar sig själv till shadow RAM som standard.
QEMM v7.03 (17 november 1993)
- VIDRAM undertrycker inte längre avbrott 10, funktion 1B-anrop (Video BIOS-funktionalitet och tillståndsinformation för MCGA / VGA ).
- Nya Optimize-switchar inkluderar /NOFLUSH (/NOFL).
- Stealth DoubleSpace virtualiserar DOS-funktion 9.
- DOSDATA förbättrar kompatibiliteten med Stacker 3.1, stöder PC DOS 6.1 och XTRADRIVE eller OS/2 2.x Boot Manager.
- Stealth Windows-drivrutinen uppdaterades till 7.02.
- QEMM-drivrutinen stöder nu Compaq 20/e och 25/e.
QEMM v7.04 (28 februari 1994)
- Tillagt stöd för DOS 6.20 .
- Maximalt RAM-minne är 256 MB XMS/256 MB EMS.
- DOS-Up stöder nu Novell DOS 7. I DR DOS 6.0 och Novell DOS 7 laddas endast DOS-resurser högt.
- Förbättrad VCPI-kompatibilitet på system med stora mängder minne.
- QEMM stöder DESQview/X 2.0- server.*Manifest känner nu igen STB-processorer.
QEMM v7.5 (17 september 1994)
- Nya funktioner inkluderar Stealth D*Space som stöder både diskkomprimeringstekniker, DrvSpace (DOS 6.22) och DblSpace (DOS 6.20-DOS 6.00); ersätter Stealth DoubleSpace.
- Nya verktyg inkluderar QPI.VXD.
- Förbättrat Pentium-stöd med DigiSpeech Portable Sound-ljudkort med parallellport. QEMM 7.5 laddar sig inte längre till shadow RAM. Optimize upptäcker nu hårdvara på systemet med nätverkskort.
QEMM v7.53 (12 maj 1995)
- Tillagt stöd för DOS 6.22 , Windows 3.11 och Windows för arbetsgrupper 3.11 .
- Maximalt RAM-minne är 256 MB XMS/256 MB EMS.
- Förbättrad OPTIMERA så att den hittar EMS i hårdvarudetektionsfasen.
QEMM v8.0 (1995-11-04)
- Försökte stödja Windows 95 .
- Uppdaterad MagnaRAM 2.02.
- QEMM v8.0 utnyttjade inte till fullo de nya funktionerna i Windows 95. Det agerade helt enkelt som om det var Windows 3.11 och förlitade sig på att Windows 95 var nedåtkompatibelt med Windows 3.1x. Quarterdeck försökte bättre integrera v8.x med Windows 95 med patch v8.01 och den sista patchen v8.03.
QEMM v8.01 (14 februari 1996)
- Förbättrat stöd för Windows 95 och underliggande DOS 7.00.
- Lade till 4DOS.CMD.
QEMM v8.03 (7 april 1997)
- Fullt stöd för ren DOS 6.22 med Windows 3.11 eller Windows for Workgroups 3.11 .
- Bugfixar inklusive förbättringar av QEMM386, DOS-Up, LOADHI.
- Den sista officiella patchen till QEMM v8.x (25 mars 1997) har många förbättringar från QEMM 97 som snart kommer att släppas.
QEMM 97 (alias v9.0) (15 maj 1997)
- Fullt stöd för Windows 95/98/98SE (inte ME) .
- QEMM v8.03 saknar funktioner under Windows 95 (och fungerar inte med Windows 98).
- Nya verktyg inkluderar MagnaRAM, optimering av Windows 9x växlingsfil.
En Install.exe men två roller
- Kör installationsprogrammet från Windows, så kommer det att helt integrera QEMM 97 med Windows-konfigurationsfiler och registeruppdatering system.ini, lägga till QEMM-grupp, autostarta QEMM-övervakning, etc.
- Kör dock installationsprogrammet install.exe från en ren DOS (DOS 7.10 eller DOS 6.22) utan att Windows är närvarande, och det kommer att konfigurera och installera endast DOS-verktygen; uppdaterar endast DOS:s config.sys- och autoexec.bat-filer.
QEMM-konfigurationer
QEMM ger upp till 635K ledigt konventionellt minne (RAM under 640K), mycket bättre än rena MS-DOS EMM386 , FreeDOS JEMM386, UMBPCI och många andra minneshanterarprogram. QEMM maximala RAM är 635K ledigt konventionellt minne med upp till 256MB XMS/256MB EMS delat.
MS-DOS 6.22, Windows 3.11/WFW 3.11
QEMM ger de bästa fördelarna med MS-DOS 6.22 eller äldre sedan DOS. MS-DOS 6.22 ger 619K ledigt konventionellt minne och upp till 64MB XMS/32MB EMS delat RAM. Förutsatt oförändrad MS-DOS 6.22, utan tredjepartsverktyg, dvs JEMM, UMBPCI, etc. QEMM ökar tillgängligt gratis konventionellt RAM till 635K med delad 256MB XMS/256MB EMS.
När du använder Windows 3.11 eller Windows For Workgroups 3.11 tillhandahåller QEMM ytterligare ledigt konventionellt minne för DOS-prompt som körs under Windows. QEMM lämpar sig väl för Windows 3.x som har stöd för det sedan QEMM v5.x så tidigt som 1990. Som ett resultat integrerar QEMM 8.03 eller QEMM 97 mycket bra med Windows 3.11/WFW 3.11.
MS-DOS 7.10, Windows 95 OSR2/Windows 98 SE
QEMM ökar det tillgängliga fria konventionella RAM-minnet för MS-DOS 7.10 och även för DOS-prompt under Windows 95 OSR2/Windows 98 SE. QEMM maximala RAM är dock en delad 256MB XMS/256MB EMS, vilket är mindre än vad DOS 7.10 och Windows 95/98 stöder utan QEMM. MS-DOS 7.10 ger 624K ledigt konventionellt minne och upp till 1GB XMS/32MB EMS; förutsatt oförändrad MS-DOS, med HIMEM.SYS och EMM386.EXE utan några verktyg från tredje part. Således är QEMM kompatibel med MS-DOS 7.10 och Windows 9x och ger något mer ledigt konventionellt RAM men det sänker det maximala RAM-minnet till 256 MB XMS/256 MB EMS.
Konsekvenser av att använda eller inaktivera EMS
EMS- minne använder normalt 64KB UMB som sidram, detta minskar den totala UMB som är tillgänglig för DOS. Så vissa rekommenderar att du stänger av EMS med hjälp av NOEMS-omkopplaren för att öka den totala UMB lediga med 64KB. QEMM stöder NOEMS switch, men det är mycket bättre att tillhandahålla EMS än att spara 64K Page Frame. QEMM drar fördel av EMS-minne och skapar vanligtvis mer ledigt RAM-minne i det lägre 1M adressutrymmet än de 64KB som krävs för EMS. QEMM StealthROM, SqueezeFrame och Stealth D*Space kräver alla EMS för att fungera genom att mappa ROM och databuffertar till EMS, vilket frigör fler UMB:er. QEMM:s TechNote FRAME.TEC säger: "Således är alla råd att ta bort sidramen slantar och dumt. Kom ihåg att sidramen är 64K adressutrymme som kan användas vilket program som helst, när som helst, för att komma åt effektivt som mycket minne som den vill. Vissa ser sidramen som 64K adressutrymme som kan användas för att rymma 64K program, men det är mycket mer användbart att betrakta sidramen som en plats för åtkomst till upp till 32 megabyte kod och /eller data för programmen som använder det."
DOS = HÖG,UMB enhet = C:\QEMM\dosdata.sys enhet = C:\QEMM\qemm386.sys R:1 RAM UR=1M-256M ST:MI=b000-b7ff X=f000-ffff enhet = C: \QEMM\dos-up.sys @C:\QEMM\dos-up.dat skal = C:\QEMM\loadhi.com /R:2 C:\command.com C:\ /P /E:1024
Obs: Om du använder VMware, ersätt sedan raden qemm386.sys med
enhet = C:\QEMM\qemm386.sys R:1 RAM UR=1M-256M X=e800-e900
Hoppa över QEMM386 under uppstart
Håll ned ALT- tangenten under uppstart och qemm386.sys kommer inte att laddas men uppmanas att trycka på Esc för att hoppa över laddningen.
Alternativt, håll ned F5 så att DOS hoppar över att ladda hela config.sys + autoexec.bat eller håll nere F8 så att DOS prompt Y/N för att bekräfta varje rad i config.sys och autoexec.bat; så att du kan hoppa över att ladda qemm386.sys, dos-up, dosdata, etc.
Kan hjälpa till när du testar ny konfiguration som leder till systemlåsningar. Att hålla ALT eller trycka på F5/F8 under uppstart kan vara en räddning!
DOS-motsvarigheter
Microsoft släppte jämförbara men enklare egna minneshanterare - HIMEM.SYS för XMS och EMM386.EXE för EMS med MS-DOS 4.01 1989; tidigare Windows/386 2.1 inkluderade en inbyggd EMM som endast erbjöd EMS till DOS-fönster under Windows-sessioner. Dessa versioner kunde ännu inte skapa Upper Memory Blocks . Digital Researchs DR DOS 5.0 (1990) var den första icke-leverantörsspecifika DOS som erbjöd UMB-teknologin, med en 386-läges XMS/EMS-hanterare även kallad EMM386 . Det kan också allokera en del av videominnet eller EMS-minnet som UMB-minne. MS-DOS erbjöd slutligen UMBs 1991 med version 5.0. MS-DOS EMM386 krävde att HIMEM laddades först, medan DR-DOS EMM386 fyllde båda rollerna och inte behövde en separat XMS-drivrutin, som fortfarande fanns men bara behövdes på 80286-baserade maskiner (ursprungligen hette HIDOS.SYS, senare HIMEM. SYS). Om en XMS-drivrutin laddades före DR-DOS EMM386, skulle den använda denna istället för den inbyggda XMS-hanteraren. Att använda en extern och eventuellt anpassad XMS-drivrutin kan hjälpa till att övervinna problem med BIOS-minnesrapporteringsfunktioner som gör att minneshanteraren inte ser allt tillgängligt minne, och på maskiner som använder icke-standardiserade gate-A20-växlingsmetoder, medan användning av den interna XMS-drivrutinen EMM386 kan ta fördel av hastighetsoptimerad 32-bitars kod för XMS-drivrutinen och flytta alla utom en liten stump av XMS-drivrutinen till Extended Memory. DR-DOS EMM386 skulle kunna fylla "fria" områden med UMB eller mappa RAM över oanvända ROM-områden i virtuellt läge, ge stöd för DPMI (och - i vissa speciella problem - DPMS ) och ladda stödet för förebyggande multitasking och multitrådskomponenter av operativsystemet.
Windows-övergång/nedgång av QEMM
Även om det var populärt när DOS-program var mainstream, blev QEMM så småningom i stort sett irrelevant eftersom Windows-program och DOS-spel med DOS-förlängare ersatte traditionella DOS-program för de flesta användare. En del av DOS-användarna bytte också till skyddade operativsystem som inte stöds av QEMM, såsom Windows NT- serien och Linux .
Den slutliga versionen var QEMM 97, som var kompatibel med Windows 95 och senare Windows 98 / ME , men vid det här laget var inte bara DOS-minneshantering i hög efterfrågan, utan de återstående konkurrenskraftiga DOS-applikationerna (inklusive olika GNU- verktyg och text redaktörer) stödde EMS, XMS eller DPMI - vilket minskade efterfrågan på konventionellt minne - eller hade porterats till Windows 95 eller högre. Tillgången på ökande RAM-storlekar till låg kostnad tjänade till att minska behovet av MagnaRAM. Slutligen tillhandahåller moderna PCI- kretsuppsättningar dokumenterad funktionalitet för att ta bort skrivskydd från oanvänd UMA; i många eller de flesta fall eliminerar detta sista faktum behovet av QEMM även för de relativt få användare som använder DOS-applikationer och som annars kan tycka att QEMM är väsentligt.
Se även
- Verkligt läge
- Overkligt läge
- Skyddat läge
- Konventionellt minne
- Utökat minne (XMS)
- Utökat minne (EMS)
- Högt minnesområde (HMA)
- Upper Memory Block (UMB)
- DOS Protected Mode Interface (DPMI)
- 640k barriär
- DESQview
Vidare läsning
- Brown, Ralf D. ; Schulman, Andrew (juli 1994). "QPI: QEMM-386 programmeringsgränssnitt" . Dr Dobb's Journal . Odokumenterad hörna. San Mateo, Kalifornien: 123–131. Arkiverad från originalet 2017-08-23 . Hämtad 2017-08-23 .
- Ralf Browns avbrottslista
- Obehörig Windows 95 (Andrew Schulman), 1:a upplagan.
- Dr. Dobb's Journal , avsnittet Odokumenterat hörn i synnerhet
- Intel PCIset och processor manualer
- källkod och binärer för HIMEM, EMM386, DOS, UMBPCI och andra;
- QEMM dokumentation