1 / 10

Virtual-86 Mode

STES Sinhgad Institute of Tech. & Science Dept. of Computer Engg. Pune-41. Virtual-86 Mode. Mr. Mahendra B. Salunke Asst. Prof. Dept. of Computer Engg., STES SITS, Narhe, Pune-41. Introduction.

zarola
Télécharger la présentation

Virtual-86 Mode

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. STES Sinhgad Institute of Tech. & Science Dept. of Computer Engg. Pune-41 Virtual-86 Mode Mr. Mahendra B. Salunke Asst. Prof. Dept. of Computer Engg., STES SITS, Narhe, Pune-41

  2. Introduction • The Pentium processor supports execution of one or more 8086 or 8088 programs in a Pentium processor protected-mode environment. • An 8086 program runs in this environment as part of a virtual-8086 task. Virtual-8086 tasks take advantage of the hardware support for multitasking offered by the protected mode. • Not only can there be multiple virtual-8086 tasks, each one running an 8086 program, but virtual-8086 tasks can be multitasked with other Pentium processor tasks. Computer Engg. Dept. STES SITS Pune

  3. The purpose of a virtual-8086 task is to form a "virtual machine" for running programs written for the 8086 processor. • A complete virtual machine consists of hardware and system software. • The hardware provides a virtual set of registers (through the TSS), a virtual memory space (the first megabyte of the linear address space of the task), and virtual interrupt support and directly executes all instructions which deal with these registers and with this address space. • The software controls the external interfaces of the virtual machine (I/O, interrupts, and exceptions) in a manner consistent with the larger environment in which it runs. • Software which supports virtual 8086 machines is called a virtual-8086 monitor.

  4. EXECUTING 8086 CPU CODE • The processor runs in virtual-8086 mode when the VM (virtual machine) bit in the EFLAGS register is set. The processor tests this flag under two general conditions: • When loading segment registers, to know whether to use 8086-style address translation. • When decoding instructions, to determine which instructions are sensitive to IOPL and which instructions are not supported (as in real mode). Computer Engg. Dept. STES SITS Pune

  5. Registers and Instructions • The register set available in virtual-8086 mode includes all the registers defined for the 8086 processor plus new registers introduced after the 8086 processor (FS and GS). • Instructions, which explicitly operate on the segment registers FS and GS, are available. The segment override prefixes can be used to cause instructions to use the FS and GS registers for address calculations. • Instructions can take advantage of 32-bit operands through the use of the operand size prefix. • Programs running as virtual-8086 tasks can take advantage of the new application-oriented instructions added to the architecture by the introduction of the Intel 286, Intel386, Intel486, and Pentium processors Computer Engg. Dept. STES SITS Pune

  6. Intel 286 processors Instructions • PUSH immediate data • Push all and pop all (PUSHA and POPA) • Multiply immediate data • Shift and rotate by immediate count • String I/O • ENTER and LEAVE instructions • BOUND instruction Computer Engg. Dept. STES SITS Pune

  7. Intel386 processors Instructions • LSS, LFS, LGS instructions • Long-displacement conditional jumps • Single-bit instructions • Bit scan instructions • Double-shift instructions • Byte set on condition instruction • Move with sign/zero extension • Generalized multiply instruction Computer Engg. Dept. STES SITS Pune

  8. Intel486 and Pentium processors Instructions • INTEL486 instructions: • BSWAP instruction • XADD instruction • CMPXCHG instruction • Pentium instructions: • CMPXCHG8B instruction • CPUID instruction Computer Engg. Dept. STES SITS Pune

  9. Address Translation Computer Engg. Dept. STES SITS Pune

  10. E-mail: msalunke@gmail.com URL: www.microsig.webs.com Happy Learning... Computer Engg. Dept. STES SITS Pune

More Related