Windows 16-bit Environment

Windows NT uses a single multithreaded VDM support to run 16-bit Windows-based (Win16) applications. One of the main goals for Win16 support is to provide a seamless interface for running Win16 applications in the Windows NT environment.

The Win16 VDM (sometimes called WOW for Win16 on Win32) is preemptively multitasked with respect to other processes running on the system. However, each Win16 application is nonpreemptively multitasked with respect to each other. That is, only one Win16 application can run at a time while the others are blocked. If the Win16 VDM is preempted when the system returns, it always unblocks the Win16 application that was running before the Win16 VDM was preempted.

Additionally, the Win16 VDM provides stubs for Windows 3.1 Kernel, User, graphical device interface dynamic-link libraries (GDI DLLs), and it automatically handles translation of 16-bit Windows APIs and messages.

Figure 1.13 Structure of the Win16 VDM

For more information about using Windows 3.x applications on Windows NT, see Chapter 15, "Windows 3.x Compatibility."