Discuss briefly 80386 virtual mode?
|Subject||Microprocessor and Assembly Language|
|NU Year||Set: 5.(b) Marks: 5 Year: 2009|
The virtual 8086 mode is a mode for a protected mode task. Consequently, the processor can switch between VM86 and non-VM86 tasks, enabling multitasking legacy (MS-DOS) applications.
To use virtual 8086 mode, an operating system sets up a virtual 8086 mode monitor, which is a program that manages the real-mode program and emulates or filters access to system hardware and software resources. The monitor must run at privilege level 0 and in protected mode. Only the 8086 program runs in VM86 mode and at privilege level 3. When the real-mode program attempts to do things like access certain I/O ports to use hardware devices or access certain regions in its memory space, the CPU traps these events and calls the V86 monitor, which examines what the real mode program is trying to do and either acts as a proxy to interface with the hardware, emulates the intended function the real-mode program was trying to access, or terminates the real-mode program if it is trying to do something that cannot either be allowed or be adequately supported (such as reboot the machine, set a video display into a mode that is not supported by the hardware and is not emulated, or write over operating system code).