DOS Protected Mode Interface

From Free net encyclopedia

DPMI is the method which Microsoft prescribes for a DOS program to run in protected mode and to access extended memory under a multitasking operating system like Microsoft Windows 3.0 and later. This service is called the DPMI host. It is provided either by the host operating system (virtual DPMI host) or by 16-bit or 32-bit DOS extenders such as DOS4GW or CWSDPMI (real DPMI host).

The DPMI specification version 0.9 was published in 1990 by the DPMI Committee, and it was extended to version 1.0 in 1991. It is available from Intel Literature Sales. However, version 1.0 was never implemented in Windows so programs have to be written to version 0.9.

VCPI

VCPI (Virtual Control Program Interface) was an earlier and incompatible method for doing the same thing. It was limited to 32-bit mode. VCPI was provided by the expanded memory manager in DOS (e.g. CEMM, QEMM, later EMM386). It got eclipsed by DPMI, notably because it was not supported for DOS programs run in Windows 3.0's most powerful 386 enhanced mode. It also did not work with OS/2 2.0 and later. Windows 3.0 only supported VCPI in Standard and Real modes. Earlier Windows/386 2.1 was not compatible with DOS extenders at all.

VCPI also had a more limited scope, in that it basically only allowed a protected mode DOS program to run at all when such a program was started from DOS already running inside a virtual 8086 mode task, typically because a memory manager was installed and operating as a virtual [mode] control program for the processor. Indeed, because the virtual 8086 mode fully isolates programs from the hardware, without some support from the control program, it is not possible for another program to switch to protected mode by itself.

External links

This article was originally based on material from the Free On-line Dictionary of Computing, used with permission. Update as needed.de:DPMI pl:DPMI