DOS Wiki
Advertisement

JEMM386 is a new LIM EMS memory management tool. It does not allocate data types, just chunks of DOS Expanded memory. Competitors include QEMM386, DOS's EMM386, and Phar Lap's 386Max.

JEMM386 details the following .obj files: JEMM32.obj, EMS.obj, VCPI.obj, DEV.obj, XMS.obj, DMA.obj, I15.obj, EMU.obj, VDS.obj, POOL.obj, INIT.obj, DEBUG.obj, JEMM16.obj (optionally with _JEMM32.inc), and INIT16.obj.

concepts:

EMS: Expanded Memory System: This swaps memory up to 8GB into the Page Frame. The Page Frame is the part of the XMS spec which regards a memory region of 64KB between 0xC0000 and 0xF0000.

VCPI: Virtual Control Program Interface. This regards any DOS tsr or multitasking environment's kernel. It enables the said kernel to swap into and out of protected mode for 386+ compatibility. This is facilitated with a mere interrupt service routine.

DEV: a device. DOS has built-in devices which include a console, serial ports, line printing or null parallel ports, each drive that is attached, and each driver loaded from CONFIG.sys may also create one for I/O.

XMS: the LIM EMS standard is built on top of the DOS Extended memory manager. Extended memory swaps memory through the page frame to Real or V86 mode.

DMA: Direct memory access. An onboard DMA controller may bypass the CPU to perform memory or disk I/O.

I15. The Int 0x15 facility is used to perform such functions as enabling protected mode. See VCPI above.

EMU: emulation.

VDS: (fixme.)

POOL: The pool of EMS memory is a managed resource. This is because the 386+ is not operated in the same mode when managing this resource as when using it.

INIT: Initialization. The beginning of JEMM386's driver depends on where and why anyone can load it.

DEBUG: The development of JEMM386 may require additional situations where the condition of its data is reported. There may also be a "failsafe" mode in situations where this is required and compiled in.

JEMM16: the real-mode part of the JEMM386 EMS driver.

JEMM32: the protected-mode part of the JEMM386 driver. (Note: There does not have to be a conflict over V86 versus protected mode operation if the I15 facility is employed in the intended DOS program's kernel.)

INIT16: the real-mode initialization routine which should allow DOS-capable loaders such as FDCONFIG.sys to call on JEMM386 to begin its operations.

parameters: the default FreeDOS parameters are illustrated in CONFIG.sys as follows:

        DEVICE=dat\jemm\JEMM386.sys X=TEST

This directs JEMM386 to test extended memory.

A (default) RAM option may also direct JEMM386 to use the RAM above one MB as Expanded memory (DOS EMS memory.)

Advertisement