Windows NT Application Support
DOS applications are executed in Windows NT through the use of NTVDM's, or NT Virtual DOS Machines. An NTVDM is a subsystem that makes the application think that it's actually in DOS. It is a sort of "holodeck" for DOS programs. When a DOS program is executed in Windows NT, an NTVDM is automatically opened. Each execution of a DOS program opens another NTVDM. The positive side of this is that the DOS applications are running in separate NTVDM's in separate memory locations. Therefore, one DOS application cannot adversely affect another because they run in protected memory.
The negative effects of DOS applications always running in separate NTVDM's is that they cannot communicate with each other. Also, each NTVDM uses a lot of system resources. Therefore a lot of DOS applications running can really bog down the system.
DOS applications cannot access hardware directly in Windows NT. If a DOS game were to be installed in Windows NT, chances are it would not be able to access the sound card or the video accelerator. Applications must have permission to access hardware through the HAL.
The best way to view the applications running with the NTVDM's is by using Task Manager's Processes tab. The Task Manager is accessible by hitting CTRL-ALT-DEL and choosing it from the security applet, or by right-clicking the task bar and choosing "Task Manager" from the menu. (The latter method is faster). Notice that with the EDIT.COM program running, one NTVDM is loaded.
The following things are important to remember about DOS applications running in Windows NT.
- Each DOS application runs in a separate 32-bit NTVDM
- Each consecutive DOS application executed opens a new NTVDM.
- NTVDM's run in separate memory from each other.
- Applications running in NTVDM's cannot communicate with each other, nor can they access hardware directly.