VxD

Prior to the advent of Windows, DOS applications would either communicate directly with the various pieces of hardware (responding to interrupts, reading and writing device memory etc.)

As DOS was not multitasking, each application would have exclusive and complete control over the hardware while running.

These drivers solved issues relating to conflicting usage of physical resources by intercepting calls to the hardware.

VxDs should not be confused with the similarly named NTVDM-specific 'VDDs' (Virtual Device Drivers), which provide a method of emulating direct I/O under a Windows NT "DOS Box".

NTVDM VDDs run as regular, 32-bit, user-mode DLLs, and must rely on the Win32 API (or another WDM driver) to emulate the desired I/O on behalf of the 16-bit program.