Windows includes a wide variety of virtual devices to support common hardware devices and installable software. In some cases, a virtual device may need to be modified to accommodate new features or to support nonstandard hardware.
Windows provides many other virtual devices that are not intended to be modified, but help support other virtual devices. For example, many virtual devices use the services provided by the V86 memory manager (V86MMGR) and the virtual programmable interrupt controller device (VPICD) to reserve V86 mode memory and enable interrupt requests (IRQs) for their hardware.
To help with you develop virtual devices, the Microsoft Windows 95 Device Driver Development Kit includes source code for fully operational virtual devices.