QEMM - QEMM

Administrador de memoria expandida Quarterdeck (QEMM)
Desarrollador (es) Sistemas de oficina Quarterdeck
Lanzamiento estable
QEMM 97 (también conocido como v9.0) / 15 de mayo de 1997 ; Hace 24 años  ( 15 de mayo de 1997 )
Sistema operativo DOS
Tipo Administrador de memoria DOS

Quarterdeck Expanded Memory Manager ( QEMM ) es un administrador de memoria producido por Quarterdeck Office Systems desde finales de los 80 hasta finales de los 90. Era el administrador de memoria de terceros más popular para MS-DOS y otros sistemas operativos DOS .

Gamas de productos QEMM

QRAM
Un administrador de memoria de Intel 80286 o superior CPU . Es compatible con Chips and Technologies conjuntos de chips . 2.02 añadido interruptor SHADOWRAM. QEXT reasigna correctamente la especificación de memoria ampliada (XMS). Incluye VIDRAM, Optimize, LOADHI de QEMM 6.02, Manifest 1.13. Las versiones anteriores de QRAM también admitían las CPU 8086 y 8088 más antiguas .
Edición del juego QEMM
Es una versión de QEMM que incluye Quarterdeck GameRunner. Los parches para QEMM normal no funcionan en QEMM Game Edition.
Megapaquete QEMM
En la versión enviada con Borland SideKick para Windows, es una versión con SideBar 1.00 (1994-08-22) y QEMM 7.5.
DESQview 386
Incluye DESQview y QEMM-386.

Funciones / herramientas

Controlador QEMM

QEMM para ordenadores personales 80386 e IBM PS / 2

QEMM proporciona acceso al área de memoria superior (UMA) y la memoria a través de la especificación de memoria expandida (EMS), la especificación de memoria extendida (XMS), la interfaz de programa de control virtual (VCPI) y la interfaz de modo protegido de DOS (DPMI).

  • Quickboot: permite realizar una forma de reinicio en caliente o reinicio local sin pasar por el BIOS . Por lo tanto, omitirá por completo la POST , incluida la pantalla de inicio del BIOS y la prueba de memoria que consume mucho tiempo y la enumeración de dispositivos, y simplemente restaurará el estado de la CPU y las interrupciones a su estado inicial después de la POST.

DOS-Up

Reubica el kernel de DOS, el intérprete de COMMAND.COM, los recursos de DOS (por ejemplo: búferes, identificadores de archivos, pilas, lastdrive). Es compatible con DOS 3.2 o superior.

HOOKRAM

Permite que los controladores se carguen antes de cargar QEMM y aún permite el uso de la función Stealth de QEMM.

MagnaRAM

Era una utilidad de compresión de memoria virtual para Windows 3.1, Windows para trabajo en grupo y Windows 95. MagnaRAM se incluye con QEMM 97.

MagnaRAM también se lanzó como una utilidad separada.

MagnaRAM funcionó reemplazando una parte del sistema de memoria virtual de Windows . MagnaRAM se insertaba en la cadena de programas de Windows que determinaba qué piezas de RAM se moverían al disco duro. En lugar de escribir directamente en el disco duro, la información que se escribiría iría al propio búfer de MagnaRAM, ya que este era un proceso más rápido. Durante la inactividad de la CPU, MagnaRAM comprimía la información en su propio búfer de RAM. Cuando el búfer de RAM se llena, se cambia al disco duro, lo que lleva menos tiempo y menos espacio.

Manifiesto

Manifest (MFT) es una utilidad de información de hardware que muestra información sobre el sistema del usuario.

  • 1.11 errores cosméticos menores corregidos.
  • 1.12 puede identificar PS / 2 Modelo 57SX, Compaq Deskpro 486s / 16M, Sharp MZ-100. Se corrigió el EMS disponible en la pantalla Descripción general del sistema al usar Stealth.
  • 1.13 problema de identificación de BIOS Award solucionado.
  • La versión 2.0 proporciona información sobre la red, mejora los informes de las capacidades de video, APM, memoria DPMI / VCPI / EMS / XMS. La nueva característica incluye la edición de archivos de configuración de arranque de DOS y Windows.

Optimizar

Similar a MEMMAKER , es una utilidad que calcula y permite al usuario elegir órdenes óptimas de carga de controladores y TSR. Sin embargo, OPTIMIZE permite realizar una vista previa de los ajustes sin reiniciar. Se envía con QEMM y DESQview.

QDPMI

QDPMI es un controlador de servidor DPMI 0.9, creado por Dan Spear. Requiere 386 CPU y QEMM386.

QEMM 50/60

Es una versión del controlador QEMM para IBM PS / 2 Model 50 y 60.

La versión 4.03 admite tarjetas opcionales de expansión de memoria de IBM con 2-8 MB de memoria.

Sigilo

Puede reubicar la memoria asignada para el juego de caracteres CGA lejos de UMA.

A partir de la versión 8 de QEMM, permite reubicar el contenido de la ROM en UMA para proporcionar más memoria para los TSR. Se proporciona compatibilidad adicional con Stealth Windows con los VxD.

Stealth DoubleSpace / D * Espacio

Stealth D * Space permite que DoubleSpace o DriveSpace se carguen alto.

T386

Permite que las computadoras portátiles Toshiba funcionen con el administrador EMS de QEMM.

VIDRAM

  • Proporciona memoria convencional adicional en programas en modo texto, recuperando búferes ubicados en UMA que se utilizan en modos gráficos.
  • Requiere una tarjeta de video compatible con EGA / VGA.
  • VIDRAM EMS admite el acceso a la memoria de video basada en DMA a expensas de la memoria EMS para el búfer.

Limitaciones

Límite de controladores de dispositivo

LOADHI.SYS carga hasta 1 controlador de dispositivo a la vez en QEMM 4.23, 2 en QEMM 5, 32 en QEMM 6.

Límite de MagnaRAM

El ajuste del umbral de compresión máximo es del 100% para todas las versiones de MagnaRAM 2.00-2.02, excepto para MagnaRAM 2.00 incluido con QEMM 8.00, que tiene el ajuste máximo del 80%.

Limite de memoria

  • QEMM 5.0 puede gestionar hasta 16 MB EMS, 16 MB XMS.
  • QEMM 6.0 puede gestionar hasta 64 MB EMS, 64 MB XMS.
  • QEMM 6.02 puede administrar hasta 128 MB EMS, 128 MB XMS. Se eliminó el límite del parámetro EMBMEM (16 bits).
  • QEMM 7.0-7.03 puede administrar hasta 128 MB EMS, 128 MB XMS.
  • QEMM 7.04, 7.5, 8.0-8.3 y 97 (también conocido como QEMM 9.0) pueden administrar hasta 256 MB EMS / XMS.

De forma predeterminada, QEMM 7.04 y superior proporcionan hasta un total de 64 MB de RAM compartidos entre la memoria XMS, EMS y VCPI, a menos que se utilice el parámetro USERAM =. Por ejemplo, para permitir el acceso a hasta 256 MB de EMS (o 256 MB de XMS), especifique: QEMM386.SYS USERAM = 1M-256M

Para QEMM 7.04 y superior, la RAM máxima direccionable es de 256 MB de memoria, compartida entre la memoria XMS, EMS y VCPI. Inicialmente, XMS asigna los 256 MB completos y los comparte con EMS y VCPI según sea necesario, es decir, a medida que EMS y VCPI solicitan bloques de memoria, la memoria libre de XMS se reduce en la misma cantidad.

Optimizar el límite

Las versiones hasta QEMM 6.01 pueden procesar archivos por lotes de hasta 9 KB y 20 KB en QEMM 6.02.

El límite de líneas de archivos por lotes es 512 para versiones QEMM hasta 6.02.

Stealth DoubleSpace / D * Espacio

Stealth D * Space no es compatible con Windows 95 o versiones posteriores de DriveSpace.

Historial de versiones

Originalmente, el producto se llamaba QEMM-386 (requiriendo Intel 80386 y DOS 3.30 .), Y fue lanzado con un producto complementario llamado QRAM (para usar en Intel 80286 y 8088). El sufijo 386 se eliminó a partir de la versión 7.0 de QEMM en 1993, cuando Intel lanzó Intel Pentium el 22 de marzo de 1993. La versión final se renombró como QEMM 97 para seguir la nueva tendencia de marca de Microsoft de usar el año de lanzamiento en lugar de los números de versión. específicamente, Windows 95 y Windows 95 OSR2.

QEMM-386 v4.2 (11 de noviembre de 1988)

QEMM-386 v5.0 (enero de 1990)

  • Soporte agregado para Intel 80486 , DOS 4.01 y Windows 3.0 .
  • La memoria RAM máxima es de 16 MB XMS / 16 MB EMS.
  • LOADHI.SYS ahora carga 2 controladores de dispositivo a la vez.
  • Los nuevos parámetros QEMM incluyen COMPAQ386S (C386S).

QEMM-386 v5.11 (mediados de 1990)

  • Soporte agregado para servicios virtuales DMA (VDS).
  • Caché de memoria más grande compatible.

QEMM-386 v6.0 (principios de 1991)

  • Añadido soporte para DOS 5.00a y 3.0a de Windows .
  • La RAM máxima es 64 MB XMS / 64 MB EMS.
  • Las nuevas características incluyen Stealth.
  • Las nuevas utilidades incluyen HOOKRAM.
  • LOADHI.SYS ahora carga 32 controladores de dispositivo a la vez.
  • El manifiesto se actualizó a 1.10.
  • QRAM actualizado a 2.02 para los sistemas intel 80286 e intel 8088.

QEMM-386 v6.01 (mediados de 1991)

  • QEMM admite la carga del controlador XMS antes que QEMM, ejecutando Stealth en Windows 3.0 en modo 386 Enhanced.
  • Optimice el soporte de declaraciones CALL con sangría en archivos por lotes.
  • El manifiesto se actualizó a 1.11.

QEMM-386 v6.02 (13 de noviembre de 1991)

  • Admite unidades de disquete de 2,88 MB.
  • Los nuevos interruptores de optimización incluyen / COMMANDFILE (CMD), / LOADLOW (LOW), / QUICK (Q). Optimize admite el archivo de exclusión OPTIMIZE.EXC predeterminado.
  • Los nuevos parámetros QEMM incluyen DISKBUFFRAME = xx (DBF), EXCLUDESTEALTHINT = xx (XSTI), SHADOWRAM = xxx (SH), UNMAPFREEPAGES = Y / N (UFP), WINSHRINKUMBS = N (WSU).
  • De forma predeterminada, EMS no se asigna cuando Stealth está activo.
  • Optimize puede admitir archivos por lotes de hasta 20 KB.
  • El límite de 64 MB se eliminó del parámetro EMBMEM (EMB).
  • Se eliminaron los mensajes 'Danny and Larry' de TESTBIOS.
  • El manifiesto se actualizó a 1.13.
  • Vidram ahora admite sistemas con más de 640 KB de memoria convencional, utiliza EMS de forma predeterminada.

QEMM v7.0 (mediados de 1993)

Eliminó el sufijo 386 del nombre desde que Intel introdujo el procesador Pentium.

  • Se agregó soporte para Intel Pentium , DOS 6.00 y Windows 3.10 .
  • La RAM máxima es 128 MB XMS / 128 MB EMS.
  • QEMM se reescribió con código de 32 bits.
  • Las nuevas características incluyen DOSDATA, DOS-Up, Stealth ROM, Stealth DoubleSpace.
  • Las nuevas utilidades incluyen SWAPECHO.COM, OPTIMIZE.EXE (reemplazado OPTIMIZE.COM), QDPMI (Quarterdeck DPMI 0.9 host), QSETUP (QEMM Setup para Windows), SCANMEM.COM (USERAM = escáner de memoria).
  • Las utilidades actualizadas incluyen Manifest 2.0. Agregue compatibilidad con las extensiones de modo virtual y las extensiones de tamaño de página que se encuentran en Pentium, Intel 80486 posterior o CPU posteriores; Discos duros Bus-Mastering. Detección mejorada de RAM del adaptador.
  • Se agregó soporte para leer el archivo de configuración qemm, @filename.
  • Se agregó soporte para DOS 6.00 Multi-Config en CONFIG.SYS, declaraciones IF en AUTOEXEC.BAT.
  • Optimizar admite software de compresión de disco.
  • Vidram ahora puede operar en ventanas DOS de modo mejorado de Windows.
  • QEMM 7.0x se carga a sí mismo en la memoria RAM de forma predeterminada.

QEMM v7.03 (17 de noviembre de 1993)

  • VIDRAM ya no suprime la interrupción 10, llamadas de función 1B (información de estado y funcionalidad del BIOS de vídeo para MCGA / VGA ).
  • Los nuevos interruptores de optimización incluyen / NOFLUSH (/ NOFL).
  • Stealth DoubleSpace virtualiza la función DOS 9.
  • DOSDATA mejora la compatibilidad con Stacker 3.1, admite PC DOS 6.1 y XTRADRIVE o OS / 2 2.x Boot Manager.
  • El controlador Stealth de Windows se actualizó a la versión 7.02.
  • El controlador QEMM ahora es compatible con Compaq 20 / e y 25 / e.

QEMM v7.04 (28 de febrero de 1994)

  • Soporte agregado para DOS 6.20 .
  • La RAM máxima es de 256 MB XMS / 256 MB EMS.
  • DOS-Up ahora es compatible con Novell DOS 7. En DR DOS 6.0 y Novell DOS 7 , solo los recursos de DOS se cargan en alto.
  • Compatibilidad mejorada con VCPI en sistemas con grandes cantidades de memoria.
  • QEMM es compatible con el servidor DESQview / X 2.0 . * Manifest ahora reconoce los procesadores STB.

QEMM v7.5 (17 de septiembre de 1994)

  • Las nuevas características incluyen Stealth D * Space, que admite ambas técnicas de compresión de unidades, DrvSpace (DOS 6.22) y DblSpace (DOS 6.20-DOS 6.00); reemplazando Stealth DoubleSpace.
  • Las nuevas herramientas incluyen QPI.VXD.
  • Compatibilidad mejorada con Pentium con la tarjeta de sonido de puerto paralelo DigiSpeech Portable Sound. QEMM 7.5 ya no se carga a sí mismo en la memoria RAM. Optimizar ahora detecta correctamente el hardware en el sistema con tarjeta de red.

QEMM v7.53 (12 de mayo de 1995)

QEMM v8.0 (4 de noviembre de 1995)

  • Intentó admitir Windows 95 .
  • MagnaRAM 2.02 actualizado.
  • QEMM v8.0 no aprovechó al máximo las nuevas capacidades de Windows 95. Simplemente actuó como si fuera Windows 3.11 y se basó en que Windows 95 fuera compatible con Windows 3.1x. Quarterdeck intentó integrar mejor v8.x con Windows 95 con el parche v8.01 y el parche final v8.03.

QEMM v8.01 (14 de febrero de 1996)

  • Soporte mejorado para Windows 95 y DOS 7.00 subyacente.
  • Se agregó 4DOS.CMD.

QEMM v8.03 (7 de abril de 1997)

QEMM 97 (también conocido como v9.0) (15 de mayo de 1997)

  • Soporte completo para Windows 95/98 / 98SE (no ME) .
  • QEMM v8.03 carece de capacidades en Windows 95 (y no funciona con Windows 98).
  • Las nuevas utilidades incluyen MagnaRAM, que optimiza el archivo de paginación de Windows 9x.

Un Install.exe pero dos roles

  • Ejecute el instalador desde Windows e integrará completamente QEMM 97 con los archivos de configuración de Windows y la actualización del registro system.ini, agregando el grupo QEMM, iniciando automáticamente el monitoreo de QEMM, etc.
  • Sin embargo, ejecute el instalador, install.exe, desde un DOS puro (DOS 7.10 o DOS 6.22) sin Windows presente, y configurará e instalará solo las utilidades de DOS; actualizando solo los archivos config.sys y autoexec.bat de DOS.

Configuraciones QEMM

QEMM proporciona hasta 635K de memoria convencional libre (RAM por debajo de 640K), mucho mejor que MS-DOS EMM386 , FreeDOS JEMM386, UMBPCI y muchos otros programas de administración de memoria. La RAM máxima de QEMM es una memoria convencional libre de 635K con hasta 256 MB de XMS / 256 MB de EMS compartidos.

MS-DOS 6.22, Windows 3.11 / WFW 3.11

QEMM proporciona los mejores beneficios a MS-DOS 6.22 o anterior desde DOS. MS-DOS 6.22 proporciona 619K de memoria convencional libre y hasta 64MB XMS / 32MB EMS de RAM compartida. Suponiendo MS-DOS 6.22 inalterado, sin utilidades de terceros, es decir, JEMM, UMBPCI, etc. QEMM aumenta la RAM convencional libre disponible a 635K con 256MB XMS / 256MB EMS compartidos.

Mientras utiliza Windows 3.11 o Windows para trabajo en grupo 3.11, QEMM proporciona memoria convencional libre adicional para el indicador de DOS que se ejecuta en Windows. QEMM es muy adecuado para Windows 3.x ya que lo ha admitido desde QEMM v5.x ya en 1990. Como resultado, QEMM 8.03 o QEMM 97 se integran muy bien con Windows 3.11 / WFW 3.11.

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

QEMM aumenta la RAM convencional libre disponible para MS-DOS 7.10 y también para DOS Prompt en Windows 95 OSR2 / Windows 98 SE. Sin embargo, la RAM máxima de QEMM es una memoria RAM compartida de 256 MB XMS / 256 MB, que es menor que la que admiten DOS 7.10 y Windows 95/98 sin QEMM. MS-DOS 7.10 proporciona 624K de memoria convencional libre y hasta 1GB XMS / 32MB EMS; asumiendo MS-DOS inalterado, usando HIMEM.SYS y EMM386.EXE sin utilidades de terceros. Por lo tanto, QEMM es compatible con MS-DOS 7.10 y Windows 9x y proporciona un poco más de RAM convencional libre, pero reduce la RAM máxima a 256 MB XMS / 256 MB EMS.

Consecuencias de usar o deshabilitar EMS

La memoria EMS normalmente usa 64 KB de UMB como marco de página, esto reduce el total de UMB disponible para DOS. Por lo tanto, algunos recomiendan apagar EMS, usando el interruptor NOEMS, para aumentar el UMB libre total en 64 KB. QEMM admite el conmutador NOEMS, sin embargo, es mucho mejor proporcionar EMS que guardar el marco de página de 64K.

QEMM aprovecha la memoria EMS y, por lo general, creará más RAM libre en el espacio de direcciones inferior de 1 M que los 64 KB necesarios para EMS. QEMM StealthROM, SqueezeFrame y Stealth D * Space requieren que EMS funcione al mapear ROM y búferes de datos en EMS, liberando así más UMB.

El TechNote FRAME.TEC de QEMM dice: "Por lo tanto, cualquier consejo para eliminar el marco de la página es un centavo y una tontería. Recuerde que el marco de la página tiene 64K de espacio de direcciones que se puede usar con cualquier programa, en cualquier momento, para acceder de manera efectiva como tanta memoria como le gusta. Algunos ven el marco de página como 64 K de espacio de direcciones que podrían usarse para almacenar 64 K de programas, pero es mucho más útil considerar el marco de página como un lugar para acceder a hasta 32 megabytes de código y / o datos de los programas que lo utilizan ".

Ejemplo: 635K gratis, 256MB XMS compartido / 256MB EMS

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

Nota: Si usa VMware, reemplace la línea qemm386.sys por

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

Omitir QEMM386 durante el arranque

Mantenga presionada la tecla ALT durante el arranque y qemm386.sys no se cargará, pero le pedirá que presione Esc para omitir la carga.

Alternativamente, mantenga presionada la tecla F5 para que DOS omita cargar todos los archivos config.sys + autoexec.bat o presione F8 para que DOS solicite Y / N para confirmar cada línea en config.sys y autoexec.bat; lo que le permite omitir la carga de qemm386.sys, dos-up, dosdata, etc.

Puede ayudar mientras prueba una nueva configuración que conduce a bloqueos del sistema. ¡Mantener ALT o presionar F5 / F8 durante el arranque podría ser el toque salvador!

Equivalentes de DOS

Microsoft lanzó sus propios administradores de memoria comparables pero más simples: HIMEM.SYS para XMS y EMM386.EXE para EMS con MS-DOS 4.01 en 1989; anterior de Windows / 386 2.1 incluidos incorporado un EMM que ofrecía EMS para ventanas DOS solamente durante las sesiones de Windows. Estas versiones aún no pueden crear bloques de memoria superiores . Digital Research 's DR DOS 5.0 (1990) fue el primer no-específica del proveedor DOS para ofrecer la tecnología UMB, que incorpora un modo 386-XMS / EMS también llamado gestor de EMM386 . También podría asignar parte de la memoria de video o la memoria EMS como memoria UMB. MS-DOS finalmente ofreció UMB en 1991 con la versión 5.0. EMM386 de MS-DOS requería que HIMEM se cargara primero, mientras que EMM386 de DR-DOS cumplía ambos roles y no necesitaba un controlador XMS separado, que todavía se proporcionaba pero solo se necesitaba en máquinas basadas en 80286 (originalmente llamado HIDOS.SYS, más tarde HIMEM. SYS). Si se cargó un controlador XMS antes de DR-DOS EMM386, lo usaría en lugar del administrador XMS integrado. El uso de un controlador XMS externo y posiblemente personalizado podría ayudar a superar los problemas con las funciones de informes de la memoria del BIOS, lo que hace que el administrador de memoria no vea toda la memoria disponible, y en máquinas que usan métodos de conmutación gate-A20 no estándar, mientras que el uso del controlador XMS interno EMM386 aproveche el código de 32 bits con velocidad optimizada para el controlador XMS y reubique todo menos un pequeño trozo del controlador XMS en la memoria extendida. DR-DOS EMM386 podría llenar áreas "libres" con UMB o mapear RAM sobre áreas ROM no utilizadas en modo virtual, proporcionar soporte para DPMI (y, en algunos problemas especiales, DPMS ) y cargar el soporte para componentes preventivos de multitarea y subprocesos múltiples del sistema operativo.

Transición de Windows / Declive de QEMM

Aunque popular cuando los programas de DOS eran la corriente principal, QEMM eventualmente se volvió irrelevante ya que los programas de Windows reemplazaron a los programas de DOS para la mayoría de los usuarios. Además, algunos de los usuarios de DOS cambiaron a sistemas operativos no compatibles con QEMM, como la serie Windows NT y Linux .

La versión final fue QEMM 97, que era compatible con Windows 95 y posterior Windows 98 / ME , pero en este punto, no solo la administración de memoria de DOS ya no tenía una gran demanda, sino que las aplicaciones de DOS competitivas restantes (incluidas varias utilidades GNU y texto editores) admitían EMS, XMS o DPMI, lo que reducía la demanda de memoria convencional, o se había adaptado a Windows 95 o superior. La disponibilidad de tamaños de RAM cada vez mayores a bajo costo sirvió para reducir la necesidad de MagnaRAM. Por último, los conjuntos de chips PCI modernos proporcionan una funcionalidad documentada para eliminar la protección contra escritura de UMA no utilizado; en muchos o en la mayoría de los casos, este último hecho elimina la necesidad de QEMM incluso para aquellos relativamente pocos usuarios que utilizan aplicaciones DOS y que, de otro modo, podrían encontrar QEMM esencial.

Ver también

Referencias

Otras lecturas

  • Brown, Ralf D .; Schulman, Andrew (julio de 1994). "QPI: La interfaz de programación QEMM-386" . Diario del Dr. Dobb . Rincón indocumentado. San Mateo, California: 123-131. Archivado desde el original el 23 de agosto de 2017 . Consultado el 23 de agosto de 2017 .
  • Lista de interrupciones de Ralf Brown
  • Windows 95 no autorizado (Andrew Schulman), 1st Ed.
  • Dr. Dobb's Journal , sección de la esquina indocumentada en particular
  • Manuales del procesador y PCIset Intel
  • código fuente y binarios de HIMEM, EMM386, DOS, UMBPCI y otros;
  • Documentación QEMM