Because programs written for DOS behave as if they own the entire machine, IA32 processors (starting with the 386) implement a mode known as Virtual 8086 (VM86) Mode. When a task is executed with this processor feature enabled (when EFlags[VM] = 1), the processor enables “watchdog” logic to monitor the program's behavior on an instruction-by-instruction basis. When operating in VM86 mode, the processor traps out to a program referred to as a Virtual Machine Monitor (VMM) whenever the task attempts to perform an action inimical to the OS or the other currently-suspended programs. The VMM emulates the action required by the task in a fashion that is friendly to the OS and other programs. A detailed description of VM86 mode can be found in the chapter entitled “Virtual 8086 Mode” on page 329.
18.224.95.38