## Virtual Device Driver Reference for OS/2

[prev][next][parent][TOC]

### Installable Virtual Video Device Driver Architecture

The architecture of a virtual video device driver adheres to the architecture defined for all virtual device drivers. However, some parts of the multiple DOS sessions architecture have been designed primarily for virtual video device drivers, as follows:

Foreground and background notification hooks
Freeze and thaw services
Title change and code-page change notification hooks

A significant amount of the primary virtual video device driver code involves communication with the DOS session Window Manager. A Remote Procedure Call (RPC) mechanism must be used to communicate between the DOS session Window Manager and a virtual video device driver under the following conditions:

The DOS session Window Manager is a Ring 3 component (lowest privilege level)
Virtual device drivers run at Ring 0 (highest privilege level)
DOS sessions have no Local Descriptor Table (LDT), and therefore cannot attach to Dynamic Link Libraries (DLLs)

For this purpose the DOS session Window Manager creates a thread that calls the virtual video device driver to wait for a video event from any of the currently windowed DOS sessions.