SlideShare a Scribd company logo
1 of 15
OS vs. VMM
Hwanju Kim
1
OS vs. VMM
• A common thing
• Managing and Providing HW resources to SW entities
• Differences
• Abstraction (OS) vs. Virtualization (VMM)
• But, a thread is also called virtual processor, and disk and
network devices can be directly accessed in an OS…
• So, fundamentally similar…
• VMM is another layer of OS to provide “machine abstraction”
HW resources OS (abstraction) VMM (virtualization)
CPU Thread & Process Virtual CPU
Memory Virtual memory Virtual memory
Disk File & Directory Virtual disk
Network Socket Virtual network
2/15
CPU Virtualization
• Privileged level
• VMM makes OS step down to less-privileged layer
• VMM must trap and virtualize any OS’s attempt to
run privileged operations
OS
Application
VMM
OS
Application
OS VMM
[Issue] How to trap and virtualize OS’s privileged operations
3/15
CPU Management
• Another scheduling layer: “VMM scheduler”
Virtual
CPU
OS VMM
[Issue] How to efficiently schedule virtual CPUs 4/15
Memory Virtualization
• OS: Virtual memory
• Virtual address  Physical address
Level 2
Page
table
Page
table
Page
table
Page
table
Level 1
Page
table
.
.
.
Physical memory
Virtual address
Physical address
5/15
Memory Virtualization
• VMM: “Virtualizing virtual memory”
• Virtual  Physical  Machine
Level 2
Page
table
Page
table
Page
table
Page
table
Level 1
Page
table
.
.
.
Machine memory
Virtual address
Physical
to
Machine
Pseudo physical
memory
Terminology
- Xen
Virtual  (Pseudo) Physical  Machine
- Others (general)
Guest-virtual  Guest-physical  Host-physical
[Issue] How to transparently and efficiently
manage additional memory translation 6/15
Memory Management
• Memory sharing
• OS
• Parent-child copy-on-write sharing
• VMM
• No semantic of parent-child relationship
• Content-based page sharing invented by VMware [OSDI’02]
• Memory oversubscription (to be explained later)
VM 1 VM 2
Machine Memory
[Issue] How to efficiently use limited memory by avoiding
redundant and idle memory 7/15
I/O Virtualization
• Two ways of I/O virtualization
• I/O virtualization in VMM
• Rewritten Device drivers in VMM
• + High performance
• - High engineering cost
• - Low fault tolerance (driver bugs)
• Hosted I/O virtualization
• Existing device drivers in a host OS
• + Low engineering cost
• + High fault tolerance
• - Performance overheads
VMM
Guest VM
Block
device driver
Network
device driver
HW Block device Network device
Guest VM
VMM
Privileged VM
or Host OS
Block
device
driver
HW Block device Block device
Guest
VMNetwork
device
driver
Guest
VM
Most VMMs (except VMware ESX Server) adopt
hosted I/O virtualization
8/15
Block I/O Virtualization
• Block I/O virtualization
HDD or
SSD
VM VM
Privileged VM
or
Host OS
HDD or
SSD
OS VMM
9/15
Network I/O Virtualization
• OS: network I/O
Physical machine
Switch
10/15
Network I/O Virtualization
• VMM: Virtualizing network devices
VM VMPrivileged VM or Host OS
Virtual
switch
[Issue] How to achieve near-native I/O performance? 11/15
OS over VMM
• Nested resource virtualization
• Complicating efficient resource management
• “Commodity OSes have been designed and
optimized assuming that HW is dedicated”
• Semantic gap
PCPU
VMM scheduler
PCPU
VCPU VCPU
OS scheduler
VCPU
OS scheduler
VMM
VM VM VM
VCPU VCPU
OS scheduler
Task Task Task Task Task TaskTask Task
I believe my all
CPUs are
always online!
Sorry, your CPUs
are virtualized &
I don’t know what
kinds of tasks are
running on your
VCPUs
Another level of indirection invalidates
sophisticated OS-level optimizations
Semantic gap
for CPU resources 12/15
Nested Virtualization
• IBM’s Turtles project [OSDI’10]
• Nesting is being continued…
• Nesting is being needed…
• Cloud of cloud
• Gang migration
• Hypervisor development
Guest VMM
Guest
VM
Host VMM
HW
Guest VMM
Guest
VM
Guest
VM
Guest
VM
Microkernels Meet Recursive Virtual Machines [OSDI’96]
13/15
Nested Virtualization is Not New
• Theoretical analysis
• [IEEE Computer’74], [Commun. ACM’74], [SIGOPS rev’75]
• Hardware architecture
• [ACM’75]
• Nested virtualization on IBM z/VM
• [IBM system journal’91]
• Microkernel-based nested virtualization
• [OSDI’96]
• Nested virtualization on KVM with AMD
• [Linux Plumbers Conference’09]
• Nested virtualization on Xen
• [Xen summit’09]
• Blue Pill
• [Blackhat’09]
14/15
Summary
• VMM is another OS
• But, giving machine abstraction
• Nested resource virtualization complicates
computer systems
• OS and apps should consider that underlying
HW is not real!
• ASPLOS RESoLVE workshop
• Runtime Environments/Systems, Layering, and Virtualized
Environments (RESoLVE) Workshop
15/15

More Related Content

What's hot

Virtualization Architecture & KVM
Virtualization Architecture & KVMVirtualization Architecture & KVM
Virtualization Architecture & KVMPradeep Kumar
 
“Automation Testing for Embedded Systems”
“Automation Testing for Embedded Systems” “Automation Testing for Embedded Systems”
“Automation Testing for Embedded Systems” GlobalLogic Ukraine
 
Booting Android: bootloaders, fastboot and boot images
Booting Android: bootloaders, fastboot and boot imagesBooting Android: bootloaders, fastboot and boot images
Booting Android: bootloaders, fastboot and boot imagesChris Simmonds
 
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...VMworld
 
ACRN vMeet-Up EU 2021 - shared memory based inter-vm communication introduction
ACRN vMeet-Up EU 2021 - shared memory based inter-vm communication introductionACRN vMeet-Up EU 2021 - shared memory based inter-vm communication introduction
ACRN vMeet-Up EU 2021 - shared memory based inter-vm communication introductionProject ACRN
 
Xen and the art of embedded virtualization (ELC 2017)
Xen and the art of embedded virtualization (ELC 2017)Xen and the art of embedded virtualization (ELC 2017)
Xen and the art of embedded virtualization (ELC 2017)Stefano Stabellini
 
Introduction to OS LEVEL Virtualization & Containers
Introduction to OS LEVEL Virtualization & ContainersIntroduction to OS LEVEL Virtualization & Containers
Introduction to OS LEVEL Virtualization & ContainersVaibhav Sharma
 
Microsoft Hyper-V explained
Microsoft Hyper-V explainedMicrosoft Hyper-V explained
Microsoft Hyper-V explainedTTEC
 
SRE Conference 2022 - How to Build a Healthy On-Call Culture
SRE Conference 2022 - How to Build a Healthy On-Call CultureSRE Conference 2022 - How to Build a Healthy On-Call Culture
SRE Conference 2022 - How to Build a Healthy On-Call Culturesmalltown
 
SUSE shim and things related to it
SUSE shim and things related to itSUSE shim and things related to it
SUSE shim and things related to itSUSE Labs Taipei
 
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요Jo Hoon
 
Virtualization VMWare technology
Virtualization VMWare technologyVirtualization VMWare technology
Virtualization VMWare technologysanjoysanyal
 
Virtualization with KVM (Kernel-based Virtual Machine)
Virtualization with KVM (Kernel-based Virtual Machine)Virtualization with KVM (Kernel-based Virtual Machine)
Virtualization with KVM (Kernel-based Virtual Machine)Novell
 
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARMXPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARMThe Linux Foundation
 
Secure container: Kata container and gVisor
Secure container: Kata container and gVisorSecure container: Kata container and gVisor
Secure container: Kata container and gVisorChing-Hsuan Yen
 
Building a KVM-based Hypervisor for a Heterogeneous System Architecture Compl...
Building a KVM-based Hypervisor for a Heterogeneous System Architecture Compl...Building a KVM-based Hypervisor for a Heterogeneous System Architecture Compl...
Building a KVM-based Hypervisor for a Heterogeneous System Architecture Compl...Hann Yu-Ju Huang
 

What's hot (20)

Virtualization Architecture & KVM
Virtualization Architecture & KVMVirtualization Architecture & KVM
Virtualization Architecture & KVM
 
“Automation Testing for Embedded Systems”
“Automation Testing for Embedded Systems” “Automation Testing for Embedded Systems”
“Automation Testing for Embedded Systems”
 
Booting Android: bootloaders, fastboot and boot images
Booting Android: bootloaders, fastboot and boot imagesBooting Android: bootloaders, fastboot and boot images
Booting Android: bootloaders, fastboot and boot images
 
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
 
ACRN vMeet-Up EU 2021 - shared memory based inter-vm communication introduction
ACRN vMeet-Up EU 2021 - shared memory based inter-vm communication introductionACRN vMeet-Up EU 2021 - shared memory based inter-vm communication introduction
ACRN vMeet-Up EU 2021 - shared memory based inter-vm communication introduction
 
Xen and the art of embedded virtualization (ELC 2017)
Xen and the art of embedded virtualization (ELC 2017)Xen and the art of embedded virtualization (ELC 2017)
Xen and the art of embedded virtualization (ELC 2017)
 
Making Linux do Hard Real-time
Making Linux do Hard Real-timeMaking Linux do Hard Real-time
Making Linux do Hard Real-time
 
Xen Debugging
Xen DebuggingXen Debugging
Xen Debugging
 
Introduction to OS LEVEL Virtualization & Containers
Introduction to OS LEVEL Virtualization & ContainersIntroduction to OS LEVEL Virtualization & Containers
Introduction to OS LEVEL Virtualization & Containers
 
Microsoft Hyper-V explained
Microsoft Hyper-V explainedMicrosoft Hyper-V explained
Microsoft Hyper-V explained
 
SRE Conference 2022 - How to Build a Healthy On-Call Culture
SRE Conference 2022 - How to Build a Healthy On-Call CultureSRE Conference 2022 - How to Build a Healthy On-Call Culture
SRE Conference 2022 - How to Build a Healthy On-Call Culture
 
SUSE shim and things related to it
SUSE shim and things related to itSUSE shim and things related to it
SUSE shim and things related to it
 
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
 
Virtualization VMWare technology
Virtualization VMWare technologyVirtualization VMWare technology
Virtualization VMWare technology
 
Virtualization with KVM (Kernel-based Virtual Machine)
Virtualization with KVM (Kernel-based Virtual Machine)Virtualization with KVM (Kernel-based Virtual Machine)
Virtualization with KVM (Kernel-based Virtual Machine)
 
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARMXPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
 
Secure container: Kata container and gVisor
Secure container: Kata container and gVisorSecure container: Kata container and gVisor
Secure container: Kata container and gVisor
 
SR-IOV Introduce
SR-IOV IntroduceSR-IOV Introduce
SR-IOV Introduce
 
Building a KVM-based Hypervisor for a Heterogeneous System Architecture Compl...
Building a KVM-based Hypervisor for a Heterogeneous System Architecture Compl...Building a KVM-based Hypervisor for a Heterogeneous System Architecture Compl...
Building a KVM-based Hypervisor for a Heterogeneous System Architecture Compl...
 
Virtual machine
Virtual machineVirtual machine
Virtual machine
 

Viewers also liked

CPU Scheduling for Virtual Desktop Infrastructure
CPU Scheduling for Virtual Desktop InfrastructureCPU Scheduling for Virtual Desktop Infrastructure
CPU Scheduling for Virtual Desktop InfrastructureHwanju Kim
 
4. Memory virtualization and management
4. Memory virtualization and management4. Memory virtualization and management
4. Memory virtualization and managementHwanju Kim
 
1.Introduction to virtualization
1.Introduction to virtualization1.Introduction to virtualization
1.Introduction to virtualizationHwanju Kim
 
5. IO virtualization
5. IO virtualization5. IO virtualization
5. IO virtualizationHwanju Kim
 
ARM Architecture-based System Virtualization: Xen ARM open source software pr...
ARM Architecture-based System Virtualization: Xen ARM open source software pr...ARM Architecture-based System Virtualization: Xen ARM open source software pr...
ARM Architecture-based System Virtualization: Xen ARM open source software pr...The Linux Foundation
 
Task-aware Virtual Machine Scheduling for I/O Performance
Task-aware Virtual Machine Scheduling for I/O PerformanceTask-aware Virtual Machine Scheduling for I/O Performance
Task-aware Virtual Machine Scheduling for I/O PerformanceHwanju Kim
 
20081023 - Paris Vi Master STL TA - Initiation Maven
20081023 - Paris Vi Master STL TA - Initiation Maven20081023 - Paris Vi Master STL TA - Initiation Maven
20081023 - Paris Vi Master STL TA - Initiation MavenArnaud Héritier
 
Dave Gilbert - KVM and QEMU
Dave Gilbert - KVM and QEMUDave Gilbert - KVM and QEMU
Dave Gilbert - KVM and QEMUDanny Abukalam
 
QEMU - Binary Translation
QEMU - Binary Translation QEMU - Binary Translation
QEMU - Binary Translation Jiann-Fuh Liaw
 

Viewers also liked (14)

CPU Scheduling for Virtual Desktop Infrastructure
CPU Scheduling for Virtual Desktop InfrastructureCPU Scheduling for Virtual Desktop Infrastructure
CPU Scheduling for Virtual Desktop Infrastructure
 
4. Memory virtualization and management
4. Memory virtualization and management4. Memory virtualization and management
4. Memory virtualization and management
 
1.Introduction to virtualization
1.Introduction to virtualization1.Introduction to virtualization
1.Introduction to virtualization
 
5. IO virtualization
5. IO virtualization5. IO virtualization
5. IO virtualization
 
ARM Architecture-based System Virtualization: Xen ARM open source software pr...
ARM Architecture-based System Virtualization: Xen ARM open source software pr...ARM Architecture-based System Virtualization: Xen ARM open source software pr...
ARM Architecture-based System Virtualization: Xen ARM open source software pr...
 
Xen & virtualization
Xen & virtualizationXen & virtualization
Xen & virtualization
 
Hsdpa overview
Hsdpa overviewHsdpa overview
Hsdpa overview
 
Task-aware Virtual Machine Scheduling for I/O Performance
Task-aware Virtual Machine Scheduling for I/O PerformanceTask-aware Virtual Machine Scheduling for I/O Performance
Task-aware Virtual Machine Scheduling for I/O Performance
 
20081023 - Paris Vi Master STL TA - Initiation Maven
20081023 - Paris Vi Master STL TA - Initiation Maven20081023 - Paris Vi Master STL TA - Initiation Maven
20081023 - Paris Vi Master STL TA - Initiation Maven
 
Xen Memory Management
Xen Memory ManagementXen Memory Management
Xen Memory Management
 
Cqi basics
Cqi basicsCqi basics
Cqi basics
 
Dave Gilbert - KVM and QEMU
Dave Gilbert - KVM and QEMUDave Gilbert - KVM and QEMU
Dave Gilbert - KVM and QEMU
 
QEMU - Binary Translation
QEMU - Binary Translation QEMU - Binary Translation
QEMU - Binary Translation
 
Introduction to virtualization
Introduction to virtualizationIntroduction to virtualization
Introduction to virtualization
 

Similar to 2. OS vs. VMM

2virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp01
2virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp012virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp01
2virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp01Vietnam Open Infrastructure User Group
 
Server Virtualization
Server VirtualizationServer Virtualization
Server Virtualizationwebhostingguy
 
Virtualization Technology Overview
Virtualization Technology OverviewVirtualization Technology Overview
Virtualization Technology OverviewOpenCity Community
 
Introduction to Virtualization
Introduction to VirtualizationIntroduction to Virtualization
Introduction to VirtualizationMuhammadRizkyFaza
 
Using Virtualization To Improve Development And Testing
Using Virtualization To Improve Development And TestingUsing Virtualization To Improve Development And Testing
Using Virtualization To Improve Development And Testingelliando dias
 
Virtualization using VMWare Workstation
Virtualization using VMWare WorkstationVirtualization using VMWare Workstation
Virtualization using VMWare WorkstationHitesh Gupta
 
VMware DCV_ICM_Architectural Differences, Virtual Machines, Guest OS Install
VMware DCV_ICM_Architectural Differences, Virtual Machines, Guest OS InstallVMware DCV_ICM_Architectural Differences, Virtual Machines, Guest OS Install
VMware DCV_ICM_Architectural Differences, Virtual Machines, Guest OS InstallGnanaKumarBitra1
 
Virtualization and how it leads to cloud
Virtualization and how it leads to cloudVirtualization and how it leads to cloud
Virtualization and how it leads to cloudHuzefa Husain
 
More on Virtualization 3.pptx
More on Virtualization 3.pptxMore on Virtualization 3.pptx
More on Virtualization 3.pptxshruti533256
 
vSphere APIs for performance monitoring
vSphere APIs for performance monitoringvSphere APIs for performance monitoring
vSphere APIs for performance monitoringAlan Renouf
 
Presentation v mware performance overview
Presentation   v mware performance overviewPresentation   v mware performance overview
Presentation v mware performance overviewsolarisyourep
 
Xen 10th anniversary Status Report (at SELF 2013)
Xen 10th anniversary Status Report (at SELF 2013)Xen 10th anniversary Status Report (at SELF 2013)
Xen 10th anniversary Status Report (at SELF 2013)Russell Pavlicek
 
V mware view™ poc jumpstart service
V mware view™ poc jumpstart serviceV mware view™ poc jumpstart service
V mware view™ poc jumpstart servicesolarisyougood
 

Similar to 2. OS vs. VMM (20)

2virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp01
2virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp012virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp01
2virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp01
 
Server Virtualization
Server VirtualizationServer Virtualization
Server Virtualization
 
Virtualization Technology Overview
Virtualization Technology OverviewVirtualization Technology Overview
Virtualization Technology Overview
 
virtual machine.ppt
virtual machine.pptvirtual machine.ppt
virtual machine.ppt
 
Virtualization
VirtualizationVirtualization
Virtualization
 
Introduction to Virtualization
Introduction to VirtualizationIntroduction to Virtualization
Introduction to Virtualization
 
Usenix Invited Talk
Usenix Invited TalkUsenix Invited Talk
Usenix Invited Talk
 
Using Virtualization To Improve Development And Testing
Using Virtualization To Improve Development And TestingUsing Virtualization To Improve Development And Testing
Using Virtualization To Improve Development And Testing
 
Virtualization using VMWare Workstation
Virtualization using VMWare WorkstationVirtualization using VMWare Workstation
Virtualization using VMWare Workstation
 
Server virtualization
Server virtualizationServer virtualization
Server virtualization
 
Xen revisited
Xen revisitedXen revisited
Xen revisited
 
VMware DCV_ICM_Architectural Differences, Virtual Machines, Guest OS Install
VMware DCV_ICM_Architectural Differences, Virtual Machines, Guest OS InstallVMware DCV_ICM_Architectural Differences, Virtual Machines, Guest OS Install
VMware DCV_ICM_Architectural Differences, Virtual Machines, Guest OS Install
 
17-virtualization.pptx
17-virtualization.pptx17-virtualization.pptx
17-virtualization.pptx
 
Virtualization and how it leads to cloud
Virtualization and how it leads to cloudVirtualization and how it leads to cloud
Virtualization and how it leads to cloud
 
More on Virtualization 3.pptx
More on Virtualization 3.pptxMore on Virtualization 3.pptx
More on Virtualization 3.pptx
 
vSphere APIs for performance monitoring
vSphere APIs for performance monitoringvSphere APIs for performance monitoring
vSphere APIs for performance monitoring
 
Presentation v mware performance overview
Presentation   v mware performance overviewPresentation   v mware performance overview
Presentation v mware performance overview
 
DeltaV Virtualization
DeltaV VirtualizationDeltaV Virtualization
DeltaV Virtualization
 
Xen 10th anniversary Status Report (at SELF 2013)
Xen 10th anniversary Status Report (at SELF 2013)Xen 10th anniversary Status Report (at SELF 2013)
Xen 10th anniversary Status Report (at SELF 2013)
 
V mware view™ poc jumpstart service
V mware view™ poc jumpstart serviceV mware view™ poc jumpstart service
V mware view™ poc jumpstart service
 

Recently uploaded

HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxHOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxSCMS School of Architecture
 
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxOrlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxMuhammadAsimMuhammad6
 
Computer Networks Basics of Network Devices
Computer Networks  Basics of Network DevicesComputer Networks  Basics of Network Devices
Computer Networks Basics of Network DevicesChandrakantDivate1
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptxJIT KUMAR GUPTA
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...Amil baba
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiessarkmank1
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxSCMS School of Architecture
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityMorshed Ahmed Rahath
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdfKamal Acharya
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTbhaskargani46
 
Engineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesEngineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesRAJNEESHKUMAR341697
 
kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadhamedmustafa094
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXssuser89054b
 
Block diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.pptBlock diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.pptNANDHAKUMARA10
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VDineshKumar4165
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfJiananWang21
 
Verification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptxVerification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptxchumtiyababu
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Call Girls Mumbai
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsvanyagupta248
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwaitjaanualu31
 

Recently uploaded (20)

HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxHOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
 
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxOrlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
 
Computer Networks Basics of Network Devices
Computer Networks  Basics of Network DevicesComputer Networks  Basics of Network Devices
Computer Networks Basics of Network Devices
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and properties
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna Municipality
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
Engineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesEngineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planes
 
kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal load
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
Block diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.pptBlock diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.ppt
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - V
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
Verification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptxVerification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptx
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech students
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
 

2. OS vs. VMM

  • 2. OS vs. VMM • A common thing • Managing and Providing HW resources to SW entities • Differences • Abstraction (OS) vs. Virtualization (VMM) • But, a thread is also called virtual processor, and disk and network devices can be directly accessed in an OS… • So, fundamentally similar… • VMM is another layer of OS to provide “machine abstraction” HW resources OS (abstraction) VMM (virtualization) CPU Thread & Process Virtual CPU Memory Virtual memory Virtual memory Disk File & Directory Virtual disk Network Socket Virtual network 2/15
  • 3. CPU Virtualization • Privileged level • VMM makes OS step down to less-privileged layer • VMM must trap and virtualize any OS’s attempt to run privileged operations OS Application VMM OS Application OS VMM [Issue] How to trap and virtualize OS’s privileged operations 3/15
  • 4. CPU Management • Another scheduling layer: “VMM scheduler” Virtual CPU OS VMM [Issue] How to efficiently schedule virtual CPUs 4/15
  • 5. Memory Virtualization • OS: Virtual memory • Virtual address  Physical address Level 2 Page table Page table Page table Page table Level 1 Page table . . . Physical memory Virtual address Physical address 5/15
  • 6. Memory Virtualization • VMM: “Virtualizing virtual memory” • Virtual  Physical  Machine Level 2 Page table Page table Page table Page table Level 1 Page table . . . Machine memory Virtual address Physical to Machine Pseudo physical memory Terminology - Xen Virtual  (Pseudo) Physical  Machine - Others (general) Guest-virtual  Guest-physical  Host-physical [Issue] How to transparently and efficiently manage additional memory translation 6/15
  • 7. Memory Management • Memory sharing • OS • Parent-child copy-on-write sharing • VMM • No semantic of parent-child relationship • Content-based page sharing invented by VMware [OSDI’02] • Memory oversubscription (to be explained later) VM 1 VM 2 Machine Memory [Issue] How to efficiently use limited memory by avoiding redundant and idle memory 7/15
  • 8. I/O Virtualization • Two ways of I/O virtualization • I/O virtualization in VMM • Rewritten Device drivers in VMM • + High performance • - High engineering cost • - Low fault tolerance (driver bugs) • Hosted I/O virtualization • Existing device drivers in a host OS • + Low engineering cost • + High fault tolerance • - Performance overheads VMM Guest VM Block device driver Network device driver HW Block device Network device Guest VM VMM Privileged VM or Host OS Block device driver HW Block device Block device Guest VMNetwork device driver Guest VM Most VMMs (except VMware ESX Server) adopt hosted I/O virtualization 8/15
  • 9. Block I/O Virtualization • Block I/O virtualization HDD or SSD VM VM Privileged VM or Host OS HDD or SSD OS VMM 9/15
  • 10. Network I/O Virtualization • OS: network I/O Physical machine Switch 10/15
  • 11. Network I/O Virtualization • VMM: Virtualizing network devices VM VMPrivileged VM or Host OS Virtual switch [Issue] How to achieve near-native I/O performance? 11/15
  • 12. OS over VMM • Nested resource virtualization • Complicating efficient resource management • “Commodity OSes have been designed and optimized assuming that HW is dedicated” • Semantic gap PCPU VMM scheduler PCPU VCPU VCPU OS scheduler VCPU OS scheduler VMM VM VM VM VCPU VCPU OS scheduler Task Task Task Task Task TaskTask Task I believe my all CPUs are always online! Sorry, your CPUs are virtualized & I don’t know what kinds of tasks are running on your VCPUs Another level of indirection invalidates sophisticated OS-level optimizations Semantic gap for CPU resources 12/15
  • 13. Nested Virtualization • IBM’s Turtles project [OSDI’10] • Nesting is being continued… • Nesting is being needed… • Cloud of cloud • Gang migration • Hypervisor development Guest VMM Guest VM Host VMM HW Guest VMM Guest VM Guest VM Guest VM Microkernels Meet Recursive Virtual Machines [OSDI’96] 13/15
  • 14. Nested Virtualization is Not New • Theoretical analysis • [IEEE Computer’74], [Commun. ACM’74], [SIGOPS rev’75] • Hardware architecture • [ACM’75] • Nested virtualization on IBM z/VM • [IBM system journal’91] • Microkernel-based nested virtualization • [OSDI’96] • Nested virtualization on KVM with AMD • [Linux Plumbers Conference’09] • Nested virtualization on Xen • [Xen summit’09] • Blue Pill • [Blackhat’09] 14/15
  • 15. Summary • VMM is another OS • But, giving machine abstraction • Nested resource virtualization complicates computer systems • OS and apps should consider that underlying HW is not real! • ASPLOS RESoLVE workshop • Runtime Environments/Systems, Layering, and Virtualized Environments (RESoLVE) Workshop 15/15