Virtual 86 mode
This presentation is the property of its rightful owner.
Sponsored Links
1 / 10

Virtual-86 Mode PowerPoint PPT Presentation


  • 66 Views
  • Uploaded on
  • Presentation posted in: General

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.

Download Presentation

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


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

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


Virtual 86 mode

  • 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.


Executing 8086 cpu code

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


Registers and instructions

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


Intel 286 processors instructions

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


Intel386 processors instructions

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


Intel486 and pentium processors instructions

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


Address translation

Address Translation

Computer Engg. Dept. STES SITS Pune


Virtual 86 mode

E-mail: [email protected]

URL: www.microsig.webs.com

Happy Learning...

Computer Engg. Dept. STES SITS Pune


  • Login