20

Click here to load reader

QEMU Binary Translation

  • Upload
    corby

  • View
    180

  • Download
    4

Embed Size (px)

DESCRIPTION

QEMU Binary Translation. Ashish Kaila (akaila) Maneet Singh (maneets). 1. Virtualization Techniques. Full Virtualization using Binary Translation. 2. Virtualization Techniques. OS Assisted Virtualization or Parav irtualization. 3. Virtualization Techniques. - PowerPoint PPT Presentation

Citation preview

Page 1: QEMU Binary Translation

QEMU Binary Translation

Ashish Kaila (akaila)

Maneet Singh (maneets)

1

Page 2: QEMU Binary Translation

Virtualization Techniques

Full Virtualization using Binary Translation

2

Page 3: QEMU Binary Translation

Virtualization Techniques

OS Assisted Virtualization or Paravirtualization

3

Page 4: QEMU Binary Translation

Virtualization Techniques

Hardware Assisted Virtualization

4

Page 5: QEMU Binary Translation

Binary Translation

VMWare Software Virtualization

Source Inst Stream (binary)

IR1IR2

.

.IRn

Translation Units (TU)

IR1IR2

.

.IRn

Target Inst Stream (binary)

Compiled Code Fragment (CCF)

Dynamic Binary Translator

5

Page 6: QEMU Binary Translation

Binary Translation

QEMU Binary Translation in brief

Source Inst Stream (binary)

Micro-operations

implemented in C

Object file

Target Inst Stream (binary)

dyngen

6

Page 7: QEMU Binary Translation

Quick EMUlation (QEMU)

Machine Emulator

Virtualizer

QEMU modes:

User-mode emulation – Allows a process built for one CPU to be

executed on another.

System-mode emulation – Allows emulation of a full system,

including processor and assorted peripherals.

7

Page 8: QEMU Binary Translation

References• A comparison of software and hardware techniques for x86

virtualization – Keith Adams, Ole Agesen, ASPLOS’06• Understanding Full Virtualization, Paravirtualization and Hardware

Assist – VMware Whitepaper• QEMU, a fast and portable Dynamic Translator – Fabrice Bellard• QEMU Wiki: wiki.qemu.org

8

Page 9: QEMU Binary Translation

QEMU Deep Dive

Source: wiki.qemu.org

9

Page 10: QEMU Binary Translation

10

Page 11: QEMU Binary Translation

11

Page 12: QEMU Binary Translation

12

Page 13: QEMU Binary Translation

13

Page 14: QEMU Binary Translation

14

Page 15: QEMU Binary Translation

15

Page 16: QEMU Binary Translation

16

Page 17: QEMU Binary Translation

QEMU ARCHITECTURE

17

Page 18: QEMU Binary Translation

18

Page 19: QEMU Binary Translation

1919

Page 20: QEMU Binary Translation

Thank you

20