fbpx
Wikipedia

QEMM

Quarterdeck Expanded Memory Manager (QEMM) is a memory manager produced by Quarterdeck Office Systems in the late 1980s through the late 1990s. It was the most popular third-party memory manager for the MS-DOS and other DOS operating systems.

Quarterdeck Expanded Memory Manager (QEMM)
Developer(s)Quarterdeck Office Systems
Stable release
QEMM 97 (aka v9.0) / May 15, 1997; 26 years ago (1997-05-15)
Operating systemDOS
TypeDOS memory manager

QEMM product ranges edit

QRAM
A memory manager for Intel 80286 or higher CPUs. It supports Chips and Technologies chipsets. 2.02 added SHADOWRAM switch. QEXT correctly reallocates eXtended Memory Specification (XMS). It includes VIDRAM, Optimize, LOADHI from QEMM 6.02, Manifest 1.13. Earlier versions of QRAM also supported the older 8086 and 8088 CPUs.[1]
QEMM Game Edition
It is a version of QEMM that includes Quarterdeck GameRunner. Patches for regular QEMM do not work on QEMM Game Edition.
QEMM MegaBundle
In the version shipped with Borland SideKick for Windows, it is a version with SideBar 1.00 (1994-08-22) and QEMM 7.5.
DESQview 386
It includes DESQview and QEMM-386.

Features/tools edit

QEMM driver edit

 
QEMM for 80386 and IBM PS/2 personal computers

QEMM provides access to the Upper Memory Area (UMA) and memory through the Expanded Memory Specification (EMS), Extended Memory Specification (XMS), Virtual Control Program Interface (VCPI) and DOS Protected Mode Interface (DPMI).

  • Quickboot: It allows a form of warm reboot or local reboot to be performed without going through the BIOS. It will therefore completely bypass the POST, including the BIOS startup screen and the time-consuming memory test and device enumeration, and just restore the CPU state and interrupts to their initial state after POST.

DOS-Up edit

It relocates DOS kernel, COMMAND.COM interpreter, DOS resources (e.g.: buffers, file handles, stacks, lastdrive). It supports DOS 3.2 or higher.

HOOKRAM edit

It allows drivers to be loaded before loading QEMM and still allow the use of QEMM's Stealth feature.

MagnaRAM edit

It was a virtual memory compression utility for Windows 3.1, Windows For Workgroups and Windows 95. MagnaRAM is included with QEMM 97.

MagnaRAM was also released as a separate utility.[2]

MagnaRAM worked by replacing a portion of Windows' virtual memory system. MagnaRAM would insert itself in the string of Windows Programs that determined what pieces of RAM will be moved to the hard disk. Instead of writing directly to the hard disk, the information to be written would go to MagnaRAM's own buffer as this was a faster process. During CPU idle, MagnaRAM would compress the information in its own RAM buffer. When the RAM buffer becomes full, it is then swapped to the hard disk taking both less time and less space.[3]

Manifest edit

Manifest (MFT) is a hardware information utility that displays information about user's system.

  • 1.11 fixed minor cosmetic bugs.
  • 1.12 can identify PS/2 Model 57SX, Compaq Deskpro 486s/16M, Sharp MZ-100. Available EMS in System Overview screen was corrected when using Stealth.
  • 1.13 fixed Award BIOS identification problem.
  • Version 2.0 provides information on network, enhance reporting of video capabilities, APM, DPMI/VCPI/EMS/XMS memory. New feature include editing DOS and Windows boot configuration files.

Optimize edit

Similar to MEMMAKER, it is a utility that calculates, and allows user to choose optimal orders of loading drivers and TSRs. However, OPTIMIZE allows preview of adjustments be made without rebooting. Shipped with QEMM and DESQview.

QDPMI edit

QDPMI is a DPMI 0.9 server driver, authored by Dan Spear. It requires 386 CPU and QEMM386.

QEMM 50/60 edit

It is a version of QEMM driver for IBM PS/2 Model 50 and 60.

Version 4.03 supports IBM Memory Expansion Option boards with 2-8MB memory.

Stealth edit

It can relocate memory assigned for CGA character set away from UMA.

Beginning with QEMM version 8, it allows ROM contents in UMA to be relocated to provide more memory for TSRs. Additional Stealth Windows compatibility is provided with VxDs.

Stealth DoubleSpace/D*Space edit

Stealth D*Space allows DoubleSpace or DriveSpace to be loaded high.

T386 edit

It allows Toshiba laptops to work with QEMM's EMS manager.

VIDRAM edit

  • Provides extra conventional memory in text mode programs, by reclaiming buffers located in UMA that are used in graphics modes.
  • It requires EGA/VGA-compatible video card.
  • VIDRAM EMS supports DMA-based video memory access at the expense of EMS memory for buffer.

Limitations edit

Device driver limit edit

LOADHI.SYS loads up to 1 device driver at a time in QEMM 4.23, 2 in QEMM 5, 32 in QEMM 6.

MagnaRAM limit edit

Maximum compression threshold setting is 100% for all versions of MagnaRAM 2.00-2.02, except for MagnaRAM 2.00 included with QEMM 8.00, which has the maximum setting of 80%.

Memory limit edit

  • QEMM 5.0 can manage up to 16 MB EMS, 16 MB XMS.
  • QEMM 6.0 can manage up to 64 MB EMS, 64 MB XMS.
  • QEMM 6.02 can manage up to 128 MB EMS, 128 MB XMS. EMBMEM (16-bit) parameter limit was removed.
  • QEMM 7.0-7.03 can manage up to 128 MB EMS, 128 MB XMS.
  • QEMM 7.04, 7.5, 8.0-8.3 and 97 (aka QEMM 9.0) can manage up to 256 MB EMS/XMS.

By default, QEMM 7.04 and above provide up to a total of 64 MB RAM shared among XMS, EMS and VCPI memory, unless the USERAM= parameter is used. For example, to allow access to up to 256 MB EMS (or 256 MB XMS), specify: QEMM386.SYS USERAM=1M-256M [4]

For QEMM 7.04 and above, the maximum addressable RAM is 256 MB of memory, shared among XMS, EMS and VCPI memory. Initially, XMS allocates the entire 256 MB and shares it with EMS and VCPI as needed, that is, as EMS and VCPI request memory blocks, XMS free memory is reduced by that same amount.[5]

Optimize limit edit

Versions up to QEMM 6.01 can process batch files up to 9KB, and 20KB in QEMM 6.02.

Batch file line limit is 512 for QEMM versions up to 6.02.

Stealth DoubleSpace/D*Space edit

Stealth D*Space does not support Windows 95 or later versions of DriveSpace.

Version history edit

Originally, the product was called QEMM-386 (requiring an Intel 80386 and DOS 3.30.), and was released with a complementary product called QRAM (for use on intel 80286 and 8088). The 386 suffix was dropped starting with QEMM version 7.0 in 1993, when Intel released the Intel Pentium on March 22, 1993. The final release was re-branded as QEMM 97 to follow Microsoft's new branding trend of using year released instead of version numbers, specifically, Windows 95 and Windows 95 OSR2.

QEMM-386 v4.2 (November 11, 1988) edit

QEMM-386 v5.0 (January 1990) edit

  • Added support for Intel 80486, DOS 4.01 and Windows 3.0.
  • Maximum RAM is 16MB XMS/16MB EMS.
  • LOADHI.SYS now loads 2 device drivers at a time.
  • New QEMM parameters include COMPAQ386S (C386S).

QEMM-386 v5.11 (mid 1990) edit

QEMM-386 v6.0 (early 1991) edit

  • Added support for DOS 5.00a and Windows 3.0a.
  • Maximum RAM is 64MB XMS/64MB EMS.
  • New features include Stealth.
  • New utilities include HOOKRAM.
  • LOADHI.SYS now loads 32 device drivers at a time.
  • Manifest was updated to 1.10.
  • QRAM updated to 2.02 for intel 80286 and intel 8088 systems.

QEMM-386 v6.01 (mid 1991) edit

  • QEMM supports loading XMS driver before QEMM, running Stealth in Windows 3.0 in 386 Enhanced mode.
  • Optimize support indented CALL statements in batch files.
  • Manifest was updated to 1.11.

QEMM-386 v6.02 (November 13, 1991) edit

  • Supports 2.88MB floppy drives.
  • New Optimize switches include /COMMANDFILE (CMD), /LOADLOW (LOW), /QUICK (Q). Optimize supports default OPTIMIZE.EXC exclusion file.
  • New QEMM parameters include DISKBUFFRAME=xx (DBF), EXCLUDESTEALTHINT=xx (XSTI), SHADOWRAM=xxx (SH), UNMAPFREEPAGES=Y/N (UFP), WINSHRINKUMBS=N (WSU).
  • By default, EMS is un-mapped when Stealth is active.
  • Optimize can support batch file up to 20KB.
  • The 64MB limit was removed from EMBMEM (EMB) parameter.
  • TESTBIOS's 'Danny and Larry' messages were removed.
  • Manifest was updated to 1.13.
  • Vidram now support systems with over 640KB conventional memory, uses EMS by default.

QEMM v7.0 (mid 1993) edit

Dropped the 386 suffix from the name since Intel introduced the Pentium processor.

  • Added support for intel Pentium, DOS 6.00 and Windows 3.10.
  • Maximum RAM is 128MB XMS/128MB EMS.
  • QEMM was rewritten with 32-bit code.
  • New features include DOSDATA, DOS-Up, Stealth ROM, Stealth DoubleSpace.
  • New utilities include SWAPECHO.COM, OPTIMIZE.EXE (replaced OPTIMIZE.COM), QDPMI (Quarterdeck DPMI 0.9 host), QSETUP (QEMM Setup for Windows), SCANMEM.COM (USERAM= memory scanner).
  • Updated utilities include Manifest 2.0. Add support of Virtual Mode Extensions and Page Size Extensions found in Pentium, later Intel 80486, or later CPUs; Bus-Mastering hard drives. Improved adapter RAM detection.
  • Added support for reading qemm configuration file, @filename.
  • Added support for DOS 6.00 Multi-Config in CONFIG.SYS, IF statements in AUTOEXEC.BAT.
  • Optimize supports disk compression software.
  • Vidram can now operate in Windows Enhanced mode DOS windows.
  • QEMM 7.0x loads itself to shadow RAM by default.

QEMM v7.03 (November 17, 1993) edit

  • VIDRAM no longer suppress interrupt 10, function 1B calls (Video BIOS Functionality and State Information for MCGA/VGA).
  • New Optimize switches include /NOFLUSH (/NOFL).
  • Stealth DoubleSpace virtualizes DOS Function 9.
  • DOSDATA improves compatibility with Stacker 3.1, supports PC DOS 6.1 and XTRADRIVE or OS/2 2.x Boot Manager.
  • Stealth Windows driver was updated to 7.02.
  • QEMM driver now supports Compaq 20/e and 25/e.

QEMM v7.04 (February 28, 1994) edit

  • Added support for DOS 6.20.
  • Maximum RAM is 256MB XMS/256MB EMS.
  • DOS-Up now supports Novell DOS 7. In DR DOS 6.0 and Novell DOS 7, only DOS resource is loaded high.
  • Improved VCPI compatibility on systems with large amounts of memory.
  • QEMM supports DESQview/X 2.0 server.*Manifest now recognizes STB processors.

QEMM v7.5 (September 17, 1994) edit

  • New features include Stealth D*Space which supports both drive compression techniques, DrvSpace (DOS 6.22) and DblSpace (DOS 6.20-DOS 6.00); replacing Stealth DoubleSpace.
  • New tools include QPI.VXD.
  • Improved Pentium support with DigiSpeech Portable Sound parallel port sound card. QEMM 7.5 no longer loads itself to shadow RAM. Optimize now properly detects hardware on system with network card.

QEMM v7.53 (May 12, 1995) edit

QEMM v8.0 (1995-11-04) edit

  • Attempted to support Windows 95.
  • Updated MagnaRAM 2.02.
  • QEMM v8.0 did not take full advantage of the new capabilities of Windows 95. It simply acted as if it was Windows 3.11 and relied on Windows 95 being downward compatible with Windows 3.1x. Quarterdeck attempted to better integrate v8.x with Windows 95 with patch v8.01 and the final patch v8.03.

QEMM v8.01 (February 14, 1996) edit

  • Improved support for Windows 95 and under-laying DOS 7.00.
  • Added 4DOS.CMD.

QEMM v8.03 (April 7, 1997) edit

  • Full support for pure DOS 6.22 with Windows 3.11 or Windows for Workgroups 3.11.
  • Bug fixes including improvements to QEMM386, DOS-Up, LOADHI.
  • Final official patch to QEMM v8.x (March 25, 1997) back-ports many improvements from soon-to-be released QEMM 97.

QEMM 97 (aka v9.0) (May 15, 1997) edit

  • Full support for Windows 95/98/98SE (not ME).
  • QEMM v8.03 lacks capabilities under Windows 95 (And doesn't work with Windows 98).
  • New utilities include MagnaRAM, optimizing Windows 9x paging file.

One Install.exe but two roles edit

  • Run the installer from within Windows, and it will fully integrate QEMM 97 with Windows configuration files and registry updating system.ini, adding QEMM group, auto starting QEMM monitoring, etc.
  • However, run the installer, install.exe, from a pure DOS (DOS 7.10 or DOS 6.22) without Windows present, and it will configure and install only the DOS utilities; updating only DOS's config.sys and autoexec.bat files.

QEMM Configurations edit

QEMM provides up to 635K free conventional memory (RAM under 640K), far better than pure MS-DOS EMM386, FreeDOS JEMM386, UMBPCI and many other memory manager programs. QEMM maximum RAM is 635K free conventional memory with up to 256MB XMS/256MB EMS shared.

MS-DOS 6.22, Windows 3.11/WFW 3.11 edit

QEMM provides the best benefits to MS-DOS 6.22 or older since DOS's. MS-DOS 6.22 provides 619K free conventional memory and up to 64MB XMS/32MB EMS shared RAM. Assuming unaltered MS-DOS 6.22, without 3rd party utilities, i.e. JEMM, UMBPCI, etc. QEMM increases the available free conventional RAM to 635K with shared 256MB XMS/256MB EMS.

While using Windows 3.11 or Windows For Workgroups 3.11, QEMM provides additional free conventional memory for DOS Prompt running under Windows. QEMM is well suited for Windows 3.x as has supported for it since QEMM v5.x as early as 1990. As a result, QEMM 8.03 or QEMM 97 integrate very well with Windows 3.11/WFW 3.11.

MS-DOS 7.10, Windows 95 OSR2/Windows 98 SE edit

QEMM increases the available free conventional RAM for MS-DOS 7.10 and also for DOS Prompt under Windows 95 OSR2/Windows 98 SE. However, QEMM maximum RAM is a shared 256MB XMS/256MB EMS, which is less than what DOS 7.10 and Windows 95/98 support without QEMM. MS-DOS 7.10 provides 624K free conventional memory and up to 1GB XMS/32MB EMS; assuming unaltered MS-DOS, using HIMEM.SYS and EMM386.EXE without any 3rd party utilities. Thus, QEMM is compatible with MS-DOS 7.10 and Windows 9x and provides slightly more free conventional RAM but it does lower the maximum RAM to 256MB XMS/256MB EMS.

Consequences of using or disabling EMS edit

EMS memory normally uses a 64KB of UMB as the Page Frame, this reduces the total UMB available to DOS. So some recommend turning off EMS, using the NOEMS switch, to increase the total UMB free by 64KB. QEMM supports NOEMS switch, however, it is far better to provide EMS than saving the 64K Page Frame.

QEMM takes advantage of EMS memory and usually will create more free RAM in the lower 1M address space than the 64KB required for EMS. QEMM StealthROM, SqueezeFrame, and Stealth D*Space all require EMS to work by mapping ROM and data buffers into EMS, thus freeing more UMB's.

QEMM's TechNote FRAME.TEC states: "Thus any advice to remove the page frame is penny-wise and pound-foolish. Remember that the page frame is 64K of address space that can be used any program, at any time, to access effectively as much memory as it likes. Some view the page frame as 64K of address space that could be used to hold up 64K of programs, but it is much more useful to consider the page frame as a place to access up to 32 megabytes of code and/or data for the programs that use it."[6]

Example: 635K Free, shared 256MB XMS/256MB EMS edit

DOS=HIGH,UMB device=C:\QEMM\dosdata.sys device=C:\QEMM\qemm386.sys R:1 RAM UR=1M-256M ST:M I=b000-b7ff X=f000-ffff device=C:\QEMM\dos-up.sys @C:\QEMM\dos-up.dat shell=C:\QEMM\loadhi.com /R:2 C:\command.com C:\ /P /E:1024 

Note: If using VMware, then replace the qemm386.sys line with

device=C:\QEMM\qemm386.sys R:1 RAM UR=1M-256M X=e800-e900 

Skipping QEMM386 while booting edit

Hold ALT key during boot and qemm386.sys will not load but prompt to hit Esc to skip loading.

Alternatively, hold F5 so DOS skips loading all of config.sys + autoexec.bat or hold F8 so DOS prompt Y/N to confirm each line in config.sys and autoexec.bat; allowing you to skip loading qemm386.sys, dos-up, dosdata, etc.

May help while testing new configuration that lead to system lockups. Holding ALT or pressing F5/F8 during boot might be the saving touch!

DOS equivalents edit

Microsoft released comparable but simpler memory managers of its own - HIMEM.SYS for XMS and EMM386.EXE for EMS with MS-DOS 4.01 in 1989; earlier Windows/386 2.1 included a built-in EMM which offered EMS to DOS windows during Windows sessions only. These versions could not yet create Upper Memory Blocks. Digital Research's DR DOS 5.0 (1990) was the first non-vendor-specific DOS to offer the UMB technology, incorporating a 386-mode XMS/EMS manager also called EMM386. It could also allocate some of the video memory or EMS memory as UMB memory. MS-DOS finally offered UMBs in 1991 with version 5.0. MS-DOS's EMM386 required HIMEM to be loaded first, while DR-DOS's EMM386 fulfilled both roles and did not need a separate XMS driver, which was still provided but only needed on 80286-based machines (originally named HIDOS.SYS, later HIMEM.SYS). If an XMS driver was loaded before DR-DOS EMM386, it would use this instead of the built-in XMS manager. Using an external and possibly customized XMS driver could help overcome issues with BIOS memory reporting functions causing the memory manager not to see all available memory, and on machines using non-standard gate-A20 switching methods, whereas using the internal XMS driver EMM386 could take advantage of speed-optimized 32-bit code for the XMS driver and relocate all but a tiny stub of the XMS driver into Extended Memory. DR-DOS EMM386 could fill "free" areas with UMBs or map RAM over unused ROM areas in virtual mode, provide support for DPMI (and - in some special issues - DPMS), and load the support for pre-emptive multitasking and multithreading components of the operating system.

Windows transition / Decline of QEMM edit

While popular when DOS programs were the mainstream, QEMM eventually became largely irrelevant as Windows programs and more intensive DOS programs, particularly games, using DOS extenders replaced traditional DOS programs for most users. Also, some of the DOS users switched to protected mode operating systems unsupported by QEMM, such as the Windows NT series and Linux.

The final version was QEMM 97, which was compatible with Windows 95 and later Windows 98/ME, but by this point, not only was DOS memory management no longer in high demand, but the remaining competitive DOS applications (including various GNU utilities and text editors) supported EMS, XMS, or DPMI - which reduced demand for conventional memory - or had been ported to Windows 95 or higher. The availability of increasing RAM sizes at low cost served to reduce the need of MagnaRAM. Finally, modern PCI chipsets provide documented functionality to remove write protection from unused UMA; in many or most cases, this last fact eliminates the need for QEMM for even those relatively few users who use DOS applications and who might otherwise find QEMM essential.

See also edit

References edit

  1. ^ InfoWorld 18. Dec. 1989, p. 34, at Google Books
  2. ^ Article: QUARTERDECK SHIPS MAGNARAM 2: CROSS-PLATFORM MEMORY MULTIPLIER FOR WINDOWS[dead link]
  3. ^ Quarterdeck MagnaRAM 2.0 Complete package February 9, 2009, at the Wayback Machine
  4. ^ 3.10 How to get the most RAM for DJGPP programs?
  5. ^ QEMM Problem 2009-05-11 at the Wayback Machine
  6. ^ Quarterdeck Expanded Memory Manager QEMM 8.03 and QEMM 97 2006-02-08 at the Wayback Machine, TechNote FRAME.TEC.

Further reading edit

  • Brown, Ralf D.; Schulman, Andrew (July 1994). "QPI: The QEMM-386 Programming Interface". Dr. Dobb's Journal. Undocumented Corner. San Mateo, California: 123–131. from the original on 2017-08-23. Retrieved 2017-08-23.
  • Ralf Brown's Interrupt List
  • Unauthorized Windows 95 (Andrew Schulman), 1st Ed.
  • Dr. Dobb's Journal, Undocumented Corner section in particular
  • Intel PCIset and Processor manuals
  • source code and binaries of HIMEM, EMM386, DOS, UMBPCI and others;
  • QEMM documentation

qemm, this, article, about, expanded, memory, manager, virtual, machine, monitor, qemu, this, article, multiple, issues, please, help, improve, discuss, these, issues, talk, page, learn, when, remove, these, template, messages, this, article, needs, additional. This article is about the expanded memory manager For the virtual machine monitor see QEMU This article has multiple issues Please help improve it or discuss these issues on the talk page Learn how and when to remove these template messages This article needs additional citations for verification Please help improve this article by adding citations to reliable sources Unsourced material may be challenged and removed Find sources QEMM news newspapers books scholar JSTOR September 2017 Learn how and when to remove this template message This article is written like a manual or guide Please help rewrite this article and remove advice or instruction October 2020 Learn how and when to remove this template message Quarterdeck Expanded Memory Manager QEMM is a memory manager produced by Quarterdeck Office Systems in the late 1980s through the late 1990s It was the most popular third party memory manager for the MS DOS and other DOS operating systems Quarterdeck Expanded Memory Manager QEMM Developer s Quarterdeck Office SystemsStable releaseQEMM 97 aka v9 0 May 15 1997 26 years ago 1997 05 15 Operating systemDOSTypeDOS memory manager Contents 1 QEMM product ranges 2 Features tools 2 1 QEMM driver 2 2 DOS Up 2 3 HOOKRAM 2 4 MagnaRAM 2 5 Manifest 2 6 Optimize 2 7 QDPMI 2 8 QEMM 50 60 2 9 Stealth 2 10 Stealth DoubleSpace D Space 2 11 T386 2 12 VIDRAM 2 13 Limitations 2 13 1 Device driver limit 2 13 2 MagnaRAM limit 2 13 3 Memory limit 2 13 4 Optimize limit 2 13 5 Stealth DoubleSpace D Space 3 Version history 3 1 QEMM 386 v4 2 November 11 1988 3 2 QEMM 386 v5 0 January 1990 3 3 QEMM 386 v5 11 mid 1990 3 4 QEMM 386 v6 0 early 1991 3 5 QEMM 386 v6 01 mid 1991 3 6 QEMM 386 v6 02 November 13 1991 3 7 QEMM v7 0 mid 1993 3 7 1 QEMM v7 03 November 17 1993 3 7 2 QEMM v7 04 February 28 1994 3 8 QEMM v7 5 September 17 1994 3 9 QEMM v7 53 May 12 1995 3 10 QEMM v8 0 1995 11 04 3 11 QEMM v8 01 February 14 1996 3 12 QEMM v8 03 April 7 1997 3 13 QEMM 97 aka v9 0 May 15 1997 3 13 1 One Install exe but two roles 4 QEMM Configurations 4 1 MS DOS 6 22 Windows 3 11 WFW 3 11 4 2 MS DOS 7 10 Windows 95 OSR2 Windows 98 SE 4 3 Consequences of using or disabling EMS 4 4 Example 635K Free shared 256MB XMS 256MB EMS 4 5 Skipping QEMM386 while booting 5 DOS equivalents 6 Windows transition Decline of QEMM 7 See also 8 References 9 Further readingQEMM product ranges editQRAM A memory manager for Intel 80286 or higher CPUs It supports Chips and Technologies chipsets 2 02 added SHADOWRAM switch QEXT correctly reallocates eXtended Memory Specification XMS It includes VIDRAM Optimize LOADHI from QEMM 6 02 Manifest 1 13 Earlier versions of QRAM also supported the older 8086 and 8088 CPUs 1 QEMM Game Edition It is a version of QEMM that includes Quarterdeck GameRunner Patches for regular QEMM do not work on QEMM Game Edition QEMM MegaBundle In the version shipped with Borland SideKick for Windows it is a version with SideBar 1 00 1994 08 22 and QEMM 7 5 DESQview 386 It includes DESQview and QEMM 386 Features tools editQEMM driver edit nbsp QEMM for 80386 and IBM PS 2 personal computersQEMM provides access to the Upper Memory Area UMA and memory through the Expanded Memory Specification EMS Extended Memory Specification XMS Virtual Control Program Interface VCPI and DOS Protected Mode Interface DPMI Quickboot It allows a form of warm reboot or local reboot to be performed without going through the BIOS It will therefore completely bypass the POST including the BIOS startup screen and the time consuming memory test and device enumeration and just restore the CPU state and interrupts to their initial state after POST DOS Up edit It relocates DOS kernel COMMAND COM interpreter DOS resources e g buffers file handles stacks lastdrive It supports DOS 3 2 or higher HOOKRAM edit It allows drivers to be loaded before loading QEMM and still allow the use of QEMM s Stealth feature MagnaRAM edit It was a virtual memory compression utility for Windows 3 1 Windows For Workgroups and Windows 95 MagnaRAM is included with QEMM 97 MagnaRAM was also released as a separate utility 2 MagnaRAM worked by replacing a portion of Windows virtual memory system MagnaRAM would insert itself in the string of Windows Programs that determined what pieces of RAM will be moved to the hard disk Instead of writing directly to the hard disk the information to be written would go to MagnaRAM s own buffer as this was a faster process During CPU idle MagnaRAM would compress the information in its own RAM buffer When the RAM buffer becomes full it is then swapped to the hard disk taking both less time and less space 3 Manifest edit Manifest MFT is a hardware information utility that displays information about user s system 1 11 fixed minor cosmetic bugs 1 12 can identify PS 2 Model 57SX Compaq Deskpro 486s 16M Sharp MZ 100 Available EMS in System Overview screen was corrected when using Stealth 1 13 fixed Award BIOS identification problem Version 2 0 provides information on network enhance reporting of video capabilities APM DPMI VCPI EMS XMS memory New feature include editing DOS and Windows boot configuration files Optimize edit Similar to MEMMAKER it is a utility that calculates and allows user to choose optimal orders of loading drivers and TSRs However OPTIMIZE allows preview of adjustments be made without rebooting Shipped with QEMM and DESQview QDPMI edit QDPMI is a DPMI 0 9 server driver authored by Dan Spear It requires 386 CPU and QEMM386 QEMM 50 60 edit It is a version of QEMM driver for IBM PS 2 Model 50 and 60 Version 4 03 supports IBM Memory Expansion Option boards with 2 8MB memory Stealth edit It can relocate memory assigned for CGA character set away from UMA Beginning with QEMM version 8 it allows ROM contents in UMA to be relocated to provide more memory for TSRs Additional Stealth Windows compatibility is provided with VxDs Stealth DoubleSpace D Space edit Stealth D Space allows DoubleSpace or DriveSpace to be loaded high T386 edit It allows Toshiba laptops to work with QEMM s EMS manager VIDRAM edit Provides extra conventional memory in text mode programs by reclaiming buffers located in UMA that are used in graphics modes It requires EGA VGA compatible video card VIDRAM EMS supports DMA based video memory access at the expense of EMS memory for buffer Limitations edit Device driver limit edit LOADHI SYS loads up to 1 device driver at a time in QEMM 4 23 2 in QEMM 5 32 in QEMM 6 MagnaRAM limit edit Maximum compression threshold setting is 100 for all versions of MagnaRAM 2 00 2 02 except for MagnaRAM 2 00 included with QEMM 8 00 which has the maximum setting of 80 Memory limit edit QEMM 5 0 can manage up to 16 MB EMS 16 MB XMS QEMM 6 0 can manage up to 64 MB EMS 64 MB XMS QEMM 6 02 can manage up to 128 MB EMS 128 MB XMS EMBMEM 16 bit parameter limit was removed QEMM 7 0 7 03 can manage up to 128 MB EMS 128 MB XMS QEMM 7 04 7 5 8 0 8 3 and 97 aka QEMM 9 0 can manage up to 256 MB EMS XMS By default QEMM 7 04 and above provide up to a total of 64 MB RAM shared among XMS EMS and VCPI memory unless the USERAM parameter is used For example to allow access to up to 256 MB EMS or 256 MB XMS specify QEMM386 SYS USERAM 1M 256M 4 For QEMM 7 04 and above the maximum addressable RAM is 256 MB of memory shared among XMS EMS and VCPI memory Initially XMS allocates the entire 256 MB and shares it with EMS and VCPI as needed that is as EMS and VCPI request memory blocks XMS free memory is reduced by that same amount 5 Optimize limit edit Versions up to QEMM 6 01 can process batch files up to 9KB and 20KB in QEMM 6 02 Batch file line limit is 512 for QEMM versions up to 6 02 Stealth DoubleSpace D Space edit Stealth D Space does not support Windows 95 or later versions of DriveSpace Version history editOriginally the product was called QEMM 386 requiring an Intel 80386 and DOS 3 30 and was released with a complementary product called QRAM for use on intel 80286 and 8088 The 386 suffix was dropped starting with QEMM version 7 0 in 1993 when Intel released the Intel Pentium on March 22 1993 The final release was re branded as QEMM 97 to follow Microsoft s new branding trend of using year released instead of version numbers specifically Windows 95 and Windows 95 OSR2 QEMM 386 v4 2 November 11 1988 edit Supported Intel 80386 and DOS 3 30 Bundled with QRAM for 80286 or 8088 8086 computers QEMM 386 v5 0 January 1990 edit Added support for Intel 80486 DOS 4 01 and Windows 3 0 Maximum RAM is 16MB XMS 16MB EMS LOADHI SYS now loads 2 device drivers at a time New QEMM parameters include COMPAQ386S C386S QEMM 386 v5 11 mid 1990 edit Added support for Virtual DMA Services VDS Supported larger memory cache QEMM 386 v6 0 early 1991 edit Added support for DOS 5 00a and Windows 3 0a Maximum RAM is 64MB XMS 64MB EMS New features include Stealth New utilities include HOOKRAM LOADHI SYS now loads 32 device drivers at a time Manifest was updated to 1 10 QRAM updated to 2 02 for intel 80286 and intel 8088 systems QEMM 386 v6 01 mid 1991 edit QEMM supports loading XMS driver before QEMM running Stealth in Windows 3 0 in 386 Enhanced mode Optimize support indented CALL statements in batch files Manifest was updated to 1 11 QEMM 386 v6 02 November 13 1991 edit Supports 2 88MB floppy drives New Optimize switches include COMMANDFILE CMD LOADLOW LOW QUICK Q Optimize supports default OPTIMIZE EXC exclusion file New QEMM parameters include DISKBUFFRAME xx DBF EXCLUDESTEALTHINT xx XSTI SHADOWRAM xxx SH UNMAPFREEPAGES Y N UFP WINSHRINKUMBS N WSU By default EMS is un mapped when Stealth is active Optimize can support batch file up to 20KB The 64MB limit was removed from EMBMEM EMB parameter TESTBIOS s Danny and Larry messages were removed Manifest was updated to 1 13 Vidram now support systems with over 640KB conventional memory uses EMS by default QEMM v7 0 mid 1993 edit Dropped the 386 suffix from the name since Intel introduced the Pentium processor Added support for intel Pentium DOS 6 00 and Windows 3 10 Maximum RAM is 128MB XMS 128MB EMS QEMM was rewritten with 32 bit code New features include DOSDATA DOS Up Stealth ROM Stealth DoubleSpace New utilities include SWAPECHO COM OPTIMIZE EXE replaced OPTIMIZE COM QDPMI Quarterdeck DPMI 0 9 host QSETUP QEMM Setup for Windows SCANMEM COM USERAM memory scanner Updated utilities include Manifest 2 0 Add support of Virtual Mode Extensions and Page Size Extensions found in Pentium later Intel 80486 or later CPUs Bus Mastering hard drives Improved adapter RAM detection Added support for reading qemm configuration file filename Added support for DOS 6 00 Multi Config in CONFIG SYS IF statements in AUTOEXEC BAT Optimize supports disk compression software Vidram can now operate in Windows Enhanced mode DOS windows QEMM 7 0x loads itself to shadow RAM by default QEMM v7 03 November 17 1993 edit VIDRAM no longer suppress interrupt 10 function 1B calls Video BIOS Functionality and State Information for MCGA VGA New Optimize switches include NOFLUSH NOFL Stealth DoubleSpace virtualizes DOS Function 9 DOSDATA improves compatibility with Stacker 3 1 supports PC DOS 6 1 and XTRADRIVE or OS 2 2 x Boot Manager Stealth Windows driver was updated to 7 02 QEMM driver now supports Compaq 20 e and 25 e QEMM v7 04 February 28 1994 edit Added support for DOS 6 20 Maximum RAM is 256MB XMS 256MB EMS DOS Up now supports Novell DOS 7 In DR DOS 6 0 and Novell DOS 7 only DOS resource is loaded high Improved VCPI compatibility on systems with large amounts of memory QEMM supports DESQview X 2 0 server Manifest now recognizes STB processors QEMM v7 5 September 17 1994 edit New features include Stealth D Space which supports both drive compression techniques DrvSpace DOS 6 22 and DblSpace DOS 6 20 DOS 6 00 replacing Stealth DoubleSpace New tools include QPI VXD Improved Pentium support with DigiSpeech Portable Sound parallel port sound card QEMM 7 5 no longer loads itself to shadow RAM Optimize now properly detects hardware on system with network card QEMM v7 53 May 12 1995 edit Added support for DOS 6 22 Windows 3 11 and Windows for Workgroups 3 11 Maximum RAM is 256MB XMS 256MB EMS Improved OPTIMIZE so it finds EMS in hardware detection phase QEMM v8 0 1995 11 04 edit Attempted to support Windows 95 Updated MagnaRAM 2 02 QEMM v8 0 did not take full advantage of the new capabilities of Windows 95 It simply acted as if it was Windows 3 11 and relied on Windows 95 being downward compatible with Windows 3 1x Quarterdeck attempted to better integrate v8 x with Windows 95 with patch v8 01 and the final patch v8 03 QEMM v8 01 February 14 1996 edit Improved support for Windows 95 and under laying DOS 7 00 Added 4DOS CMD QEMM v8 03 April 7 1997 edit Full support for pure DOS 6 22 with Windows 3 11 or Windows for Workgroups 3 11 Bug fixes including improvements to QEMM386 DOS Up LOADHI Final official patch to QEMM v8 x March 25 1997 back ports many improvements from soon to be released QEMM 97 QEMM 97 aka v9 0 May 15 1997 edit Full support for Windows 95 98 98SE not ME QEMM v8 03 lacks capabilities under Windows 95 And doesn t work with Windows 98 New utilities include MagnaRAM optimizing Windows 9x paging file One Install exe but two roles edit Run the installer from within Windows and it will fully integrate QEMM 97 with Windows configuration files and registry updating system ini adding QEMM group auto starting QEMM monitoring etc However run the installer install exe from a pure DOS DOS 7 10 or DOS 6 22 without Windows present and it will configure and install only the DOS utilities updating only DOS s config sys and autoexec bat files QEMM Configurations editQEMM provides up to 635K free conventional memory RAM under 640K far better than pure MS DOS EMM386 FreeDOS JEMM386 UMBPCI and many other memory manager programs QEMM maximum RAM is 635K free conventional memory with up to 256MB XMS 256MB EMS shared MS DOS 6 22 Windows 3 11 WFW 3 11 edit QEMM provides the best benefits to MS DOS 6 22 or older since DOS s MS DOS 6 22 provides 619K free conventional memory and up to 64MB XMS 32MB EMS shared RAM Assuming unaltered MS DOS 6 22 without 3rd party utilities i e JEMM UMBPCI etc QEMM increases the available free conventional RAM to 635K with shared 256MB XMS 256MB EMS While using Windows 3 11 or Windows For Workgroups 3 11 QEMM provides additional free conventional memory for DOS Prompt running under Windows QEMM is well suited for Windows 3 x as has supported for it since QEMM v5 x as early as 1990 As a result QEMM 8 03 or QEMM 97 integrate very well with Windows 3 11 WFW 3 11 MS DOS 7 10 Windows 95 OSR2 Windows 98 SE edit QEMM increases the available free conventional RAM for MS DOS 7 10 and also for DOS Prompt under Windows 95 OSR2 Windows 98 SE However QEMM maximum RAM is a shared 256MB XMS 256MB EMS which is less than what DOS 7 10 and Windows 95 98 support without QEMM MS DOS 7 10 provides 624K free conventional memory and up to 1GB XMS 32MB EMS assuming unaltered MS DOS using HIMEM SYS and EMM386 EXE without any 3rd party utilities Thus QEMM is compatible with MS DOS 7 10 and Windows 9x and provides slightly more free conventional RAM but it does lower the maximum RAM to 256MB XMS 256MB EMS Consequences of using or disabling EMS edit EMS memory normally uses a 64KB of UMB as the Page Frame this reduces the total UMB available to DOS So some recommend turning off EMS using the NOEMS switch to increase the total UMB free by 64KB QEMM supports NOEMS switch however it is far better to provide EMS than saving the 64K Page Frame QEMM takes advantage of EMS memory and usually will create more free RAM in the lower 1M address space than the 64KB required for EMS QEMM StealthROM SqueezeFrame and Stealth D Space all require EMS to work by mapping ROM and data buffers into EMS thus freeing more UMB s QEMM s TechNote FRAME TEC states Thus any advice to remove the page frame is penny wise and pound foolish Remember that the page frame is 64K of address space that can be used any program at any time to access effectively as much memory as it likes Some view the page frame as 64K of address space that could be used to hold up 64K of programs but it is much more useful to consider the page frame as a place to access up to 32 megabytes of code and or data for the programs that use it 6 Example 635K Free shared 256MB XMS 256MB EMS edit DOS HIGH UMB device C QEMM dosdata sys device C QEMM qemm386 sys R 1 RAM UR 1M 256M ST M I b000 b7ff X f000 ffff device C QEMM dos up sys C QEMM dos up dat shell C QEMM loadhi com R 2 C command com C P E 1024 Note If using VMware then replace the qemm386 sys line with device C QEMM qemm386 sys R 1 RAM UR 1M 256M X e800 e900 Skipping QEMM386 while booting edit Hold ALT key during boot and qemm386 sys will not load but prompt to hit Esc to skip loading Alternatively hold F5 so DOS skips loading all of config sys autoexec bat or hold F8 so DOS prompt Y N to confirm each line in config sys and autoexec bat allowing you to skip loading qemm386 sys dos up dosdata etc May help while testing new configuration that lead to system lockups Holding ALT or pressing F5 F8 during boot might be the saving touch DOS equivalents editMicrosoft released comparable but simpler memory managers of its own HIMEM SYS for XMS and EMM386 EXE for EMS with MS DOS 4 01 in 1989 earlier Windows 386 2 1 included a built in EMM which offered EMS to DOS windows during Windows sessions only These versions could not yet create Upper Memory Blocks Digital Research s DR DOS 5 0 1990 was the first non vendor specific DOS to offer the UMB technology incorporating a 386 mode XMS EMS manager also called EMM386 It could also allocate some of the video memory or EMS memory as UMB memory MS DOS finally offered UMBs in 1991 with version 5 0 MS DOS s EMM386 required HIMEM to be loaded first while DR DOS s EMM386 fulfilled both roles and did not need a separate XMS driver which was still provided but only needed on 80286 based machines originally named HIDOS SYS later HIMEM SYS If an XMS driver was loaded before DR DOS EMM386 it would use this instead of the built in XMS manager Using an external and possibly customized XMS driver could help overcome issues with BIOS memory reporting functions causing the memory manager not to see all available memory and on machines using non standard gate A20 switching methods whereas using the internal XMS driver EMM386 could take advantage of speed optimized 32 bit code for the XMS driver and relocate all but a tiny stub of the XMS driver into Extended Memory DR DOS EMM386 could fill free areas with UMBs or map RAM over unused ROM areas in virtual mode provide support for DPMI and in some special issues DPMS and load the support for pre emptive multitasking and multithreading components of the operating system Windows transition Decline of QEMM editWhile popular when DOS programs were the mainstream QEMM eventually became largely irrelevant as Windows programs and more intensive DOS programs particularly games using DOS extenders replaced traditional DOS programs for most users Also some of the DOS users switched to protected mode operating systems unsupported by QEMM such as the Windows NT series and Linux The final version was QEMM 97 which was compatible with Windows 95 and later Windows 98 ME but by this point not only was DOS memory management no longer in high demand but the remaining competitive DOS applications including various GNU utilities and text editors supported EMS XMS or DPMI which reduced demand for conventional memory or had been ported to Windows 95 or higher The availability of increasing RAM sizes at low cost served to reduce the need of MagnaRAM Finally modern PCI chipsets provide documented functionality to remove write protection from unused UMA in many or most cases this last fact eliminates the need for QEMM for even those relatively few users who use DOS applications and who might otherwise find QEMM essential See also editReal mode Unreal mode Protected mode Conventional memory Extended memory XMS Expanded memory EMS High Memory Area HMA Upper Memory Block UMB DOS Protected Mode Interface DPMI 640k barrier DESQviewReferences edit InfoWorld 18 Dec 1989 p 34 at Google Books Article QUARTERDECK SHIPS MAGNARAM 2 CROSS PLATFORM MEMORY MULTIPLIER FOR WINDOWS dead link Quarterdeck MagnaRAM 2 0 Complete package Archived February 9 2009 at the Wayback Machine 3 10 How to get the most RAM for DJGPP programs QEMM Problem Archived 2009 05 11 at the Wayback Machine Quarterdeck Expanded Memory Manager QEMM 8 03 and QEMM 97 Archived 2006 02 08 at the Wayback Machine TechNote FRAME TEC Further reading editBrown Ralf D Schulman Andrew July 1994 QPI The QEMM 386 Programming Interface Dr Dobb s Journal Undocumented Corner San Mateo California 123 131 Archived from the original on 2017 08 23 Retrieved 2017 08 23 Ralf Brown s Interrupt List Unauthorized Windows 95 Andrew Schulman 1st Ed Dr Dobb s Journal Undocumented Corner section in particular Intel PCIset and Processor manuals source code and binaries of HIMEM EMM386 DOS UMBPCI and others QEMM documentation Retrieved from https en wikipedia org w index php title QEMM amp oldid 1179831820 MagnaRAM, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.