SlideShare a Scribd company logo
Introduction to Virtualization
Hwanju Kim
1
Outline
• Goals
• Understanding the benefits of virtualization in IT
industry and how to virtualize HW resources
• Schedule
• Introduction to virtualization
• OS vs. VMM
• CPU virtualization and scheduling
• Memory virtualization and management
• I/O virtualization
• Live VM migration
• Introduction to Systemtap
2/30
How to Learn Virtualization?
• Conference proceedings
• SOSP
• Symposium on Operating Systems Principles
• OSDI
• Symposium on Operating Systems Design and Implementation
• ASPLOS
• International Conference on Architectural Support for Programming
Languages and Operating Systems
• USENIX ATC
• USENIX Annual Technical Conference
• EUROSYS
• European Conference on Computer Systems
• VEE
• International Conference on Virtual Execution Environments
• SOCC
• ACM Symposium on Cloud Computing
• Open source software
• Xen, KVM, VirtualBox
3/30
What is Virtualization?
• Multiple OSes on a single machine
• Giving an illusion that each OS is running on real HW
• Virtual Machine Monitor (VMM)
• Another layer of kernel to virtualize multiple OSes
• Also called “hypervisor”
• An OS as a supervisor is no more HW-dictator!
Hardware
Virtual Machine Monitor
Windows
App App
App
Linux
App App
App
Mac
App App
4/30
History – Born and Died (1/4)
• 1960s-1970s
• High cost of computing machines
• IBM VM/370: A VMM for IBM mainframe
• 1980s-1990s
• But, lost attentions since PC era (1980s)
• Cheap HW  No need to share hardware
• CPU did not support virtualization well
• High engineering cost and overhead
Powerful &
expensive
hardware
5/30
History - Reborn (2/4)
• The late 1990s
• Regain attention for “server consolidation”
• Toward cost-effective large-scale computing
• Stanford’s research project: Disco
• They founded VMware in 1998
Disco: Running Commodity Operating Systems on Scalable Multiprocessors [SOSP’97]
6/30
History - Renaissance (3/4)
• 1998-2002
• VMware
• “Full-virtualization”
• Running unmodified OS
• Starting with SW-based binary translation
• Success in industry and academia
• VMware‘s state-of-the-art techniques in SOSP and OSDI
• 2003
• Xen
• University of Cambridge’s project: Open source!!!
• “Xen and Art of Virtualization” [SOSP’03]
• “Para-virtualization”
• Modified OS for near-native performance: Linux on x86
• 2003-
• Virtualization research renaissance based on Xen
• 2007: Acquired by Citrix
7/30
History - Ubiquitous (4/4)
• 2005-2006
• HW-assisted virtualization
• x86 virtualization
• Intel VT-x & AMD-V
• Running unmodified OS with near-native performance
• Default functionality now
• 2006-now
• Cloud computing
• Infrastructure-as-a-Service (IaaS)
• Virtual desktop infrastructure (VDI)
• Mobile virtualization
• ARM virtualization technology (Cortex-A15)
8/30
Why Virtualization? (1/6)
• Efficient resource utilization
• Low resource utilization of each server machine
• Low total cost of ownership (TCO)
• Low cost of infrastructure and energy
VM
VM
VM
VMM
CPU
CPU
CPU
CPU
The Case for Energy-Proportional Computing [IEEE Computer’07]
Average CPU utilization of 5000+ Google’s servers
Mostly 0-50% utilization
9/30
Why Virtualization? (2/6)
• Flexible VM relocation
• “Live VM migration”
• Flexible VM relocation with near-zero downtime
• Flexible load balancing
• Relieving resource bottleneck
VM
VM
VM
CPU
CPU
CPU
CPU
10/30
Why Virtualization? (3/6)
• Flexible VM relocation
• “Live VM migration”
• Flexible VM relocation with near-zero downtime
• High availability
VM
SW or HW maintenance
(upgrade or fix)
11/30
Why Virtualization? (4/6)
• Strong isolation
• Strong isolation between co-located VMs
• Fault containment or isolation
• Safe from bugs and malicious attacks
VMM
VM
Hardware
VM
Safe
OS OS
An empirical study of operating systems errors [SOSP’01]
Hardware
App
OS
App
VMM is much smaller than OS
 Low trusted computing base (TCB)
OSes, especially drivers, are error-prone
12/30
Why Virtualization? (5/6)
• Multiple OSes on a single device
• OS dependency of legacy SW
• Linux + Windows, Android + iOS
• Different requirements of SW
• Virtualization for embedded or mobile systems
• RTOS + GPOS
• Building secure systems
• Security-enhanced OS + GPOS
Allowing for GPOS and RTOS:
The unique virtualization
needs of mission-critical
embedded systems,
TenASysTerra: A Virtual Machine-Based Platform for Trusted Computing [SOSP’03]
Trusted VMM
13/30
Why Virtualization? (6/6)
• Other benefits
• Strong security monitoring
• Security monitoring outside OSes
• Ease of deployment
• Virtual appliance
• A bundle of OS and applications
• Flexible testing and debugging
• Building distributed environments on a single machine
• Kernel development and debugging
• VM-based recording and replaying
14/30
Use Cases
• Cloud computing
• Virtual desktop infrastructure
• Mobile virtualization
15/30
Virtualization & Cloud Computing
• Virtualized data centers
Virtualization 1.x: Near term
Virtualization 2.0: Emerging
Virtualization 3.0: Future Virtualization 3.0
The fully virtualized datacenter
for cloud services
2013+
Virtualization 1.x
Virtualization 2.0
2009
출처: IDC 2010 report
16/30
Virtualization & Cloud Computing
• VM-based resource pool for various demands
• Infrastructure-as-a-Service (IaaS)
17/30
Virtualization & Cloud Computing
• Many providers use commercial & open-source
VMMs
Virtualization Solutions Cloud Providers
18/30
Virtual Desktop Infrastructure (VDI)
• Desktop provisioning
Dedicated workstations
VM VM
VM
VM
VM
- Energy wastage by idle desktops
- Resource underutilization
- High management cost
- High maintenance cost
- Low level of security
+ Energy savings by consolidation
+ High resource utilization
+ Low management cost
(flexible HW/SW provisioning)
+ Low maintenance cost
(dynamic HW/SW upgrade)
+ High level of security
(centralized data containment)
VM-based shared environments
19/30
Virtual Desktop Infrastructure (VDI)
• VDI is also hot in Korea
20/30
Virtual Desktop Infrastructure (VDI)
• VMware VDI
• Pioneer of VDI
21/30
Mobile Virtualization
• Trends of consumer electronics
• Digital convergence
• What do consumer electronics(CE) devices want to achieve?
Reliability
Trustworthiness for primary functions
Extensibility
Flexibility for adding features as needed
Business
Phone
Personal
Phone
22/30
Mobile Virtualization
• BYOD: Bring Your Own Device
• Consolidating business and personal
computing environments on a single device
Business
VM
Personal
VM
Hypervisor
Managed
domain
23/30
Mobile Virtualization
• Academia
• Columbia university’s projects
• Cells [SOSP’11]
• KVM for ARM [OLS’10]
• Cortex-A8, A9
• Now running on A15
Cells: A Virtual Mobile Smartphone Architecture [SOSP’11]
Linaro Ubuntu 11.04 for ARM
running in VM by KVM/ARM
(Cortex-A15 in Fast Model 6.1)
OS-level virtualization
24/30
Mobile Virtualization
• Embracing all apps in a unified market
• iOS + Android + Windows
• Technically possible, but not yet by industry
• Currently, not much attractive.
• Multiple Androids
• Android + RTOS
• Issues
• Performance, performance, performance…
• Graphics acceleration  Challenging
• CPU, memory limitation
• High-end smartphones can resolve this limitation
25/30
Basic Terminologies
• Types of VMMs
• Type-1 vs. Type-2
• Virtualization methods
• Full-virtualization vs. Para-virtualization
26/30
Type-1 vs. Type-2
• Depending on what sits right on HW
Guest VM
Guest OS
Host OS
VMM
HW
Guest VM
Guest OS
VMM
Guest VM
Guest OS
HW
Guest VM
Guest OS
Type-1: VMM on HW Type-2: Host OS on HW
• Xen, VMware ESX server, Hyper-V
• Mostly for server, but not limited
• VMM by default
• OS-independent VMM
• KVM, VMware Workstation, VirtualBox
• Mostly for client devices, but not limited
• VMM on demand
• OS-dependent VMM
27/30
Xen: Type-1 VMM
• Type-1 VMM
• Para-virtualization and full-virtualization
• Domain0
• Privileged VM for guest VM (domainU) management
• Handling I/O operations requested from domainUs
• Including native device drivers to directly access HW
DomainU
(Guest VM)
Guest OS
Xen VMM
DomainU
Guest VM
Guest OS
Domain0
(Privileged VM)
Linux
28/30
KVM: Type-2 VMM
• Type-2 VMM for Linux as a host OS
• Based on HW-assisted virtualization
• Linux kernel mainline (2.6.20~)
Guest VM
Guest OS
Host OS
(Linux)
KVM VMM (kernel module)
QEMU
vCPU vCPU
User space
Kernel space
Linux Process
Linux Thread Linux Thread
Linux
Thread
I/O
emulation
29/30
Full- vs. Para-virtualization
• Depending on whether OS source is modified
• Full-virtualization = No OS source modification
• SW-based full virtualization
• Emulation
• HW-based full virtualization
• HW-assisted virtualization
• Para-virtualization = OS source modification
• Virtualization-aware OS
• Bridging semantic gap between VMM and OS
• Mostly for performance
Today’s virtualization solutions adopt both approaches
for optimized performance
30/30

More Related Content

What's hot (20)

PPSX
Virtualization basics
Chandrani Ray Chowdhury
 
PPT
Virtualization VMWare technology
sanjoysanyal
 
PPTX
What is Virtualization
Dhrupesh Kotadiya
 
PDF
Virtualization Technology Overview
OpenCity Community
 
PPTX
Virtual machine
Rinaldo John
 
PPTX
5. IO virtualization
Hwanju Kim
 
PPTX
Cloud Computing: Virtualization
Dr.Neeraj Kumar Pandey
 
PPTX
Virtualization & cloud computing
Soumyajit Basu
 
PPTX
Virtual machines and their architecture
Mrinmoy Dalal
 
PPTX
Virtualization- Cloud Computing
NIKHILKUMAR SHARDOOR
 
PPT
VMware Presentation
Emirates Computers
 
PDF
Paravirtualization
Shahbaz Sidhu
 
PPTX
What is Virtualization and its types & Techniques.What is hypervisor and its ...
Shashi soni
 
PPTX
Virtualization
Utkarsh Soni
 
PDF
Xen Hypervisor
Susheel Thakur
 
PPTX
Virtualization
vishnurk
 
PPTX
virtualization and hypervisors
Gaurav Suri
 
PDF
Virtualization in Cloud Computing
Pyingkodi Maran
 
PDF
Xen & virtualization
Susheel Thakur
 
PPT
Virtualization
Chandan Varadaraj
 
Virtualization basics
Chandrani Ray Chowdhury
 
Virtualization VMWare technology
sanjoysanyal
 
What is Virtualization
Dhrupesh Kotadiya
 
Virtualization Technology Overview
OpenCity Community
 
Virtual machine
Rinaldo John
 
5. IO virtualization
Hwanju Kim
 
Cloud Computing: Virtualization
Dr.Neeraj Kumar Pandey
 
Virtualization & cloud computing
Soumyajit Basu
 
Virtual machines and their architecture
Mrinmoy Dalal
 
Virtualization- Cloud Computing
NIKHILKUMAR SHARDOOR
 
VMware Presentation
Emirates Computers
 
Paravirtualization
Shahbaz Sidhu
 
What is Virtualization and its types & Techniques.What is hypervisor and its ...
Shashi soni
 
Virtualization
Utkarsh Soni
 
Xen Hypervisor
Susheel Thakur
 
Virtualization
vishnurk
 
virtualization and hypervisors
Gaurav Suri
 
Virtualization in Cloud Computing
Pyingkodi Maran
 
Xen & virtualization
Susheel Thakur
 
Virtualization
Chandan Varadaraj
 

Viewers also liked (6)

PPTX
Network virtualization
Damian Parniewicz
 
PDF
Evaluation of Virtual Clusters Performance on a Cloud Computing Infrastructure
EuroCloud
 
PPTX
An Implementation of Virtual Cluster on a Cloud
Pongsakorn U-chupala
 
PPTX
Cs6703 grid and cloud computing unit 3
RMK ENGINEERING COLLEGE, CHENNAI
 
PPTX
Cloud computing using virtualization (Virtual Data Center)
Sonu Mamman
 
PDF
Virtualization and cloud Computing
Rishikese MR
 
Network virtualization
Damian Parniewicz
 
Evaluation of Virtual Clusters Performance on a Cloud Computing Infrastructure
EuroCloud
 
An Implementation of Virtual Cluster on a Cloud
Pongsakorn U-chupala
 
Cs6703 grid and cloud computing unit 3
RMK ENGINEERING COLLEGE, CHENNAI
 
Cloud computing using virtualization (Virtual Data Center)
Sonu Mamman
 
Virtualization and cloud Computing
Rishikese MR
 
Ad

Similar to 1.Introduction to virtualization (20)

PPTX
Virtualizacao de Servidores - Windows
Sergio Maia
 
PPSX
Client Side Hypervisors - Victoria Russell
russvd1
 
PPTX
101 Virtualization and Private Cloud
Fazle Abbas Luqmani
 
PPTX
Server virtualization
ofsorganizer
 
PDF
Virtualization, the cloud enabler
Praveen Hanchinal
 
PPTX
KIIT_Cloud_scaling and Virtualization.pptx
bhaskarkumar0125
 
PPTX
Cloud Computing vs Virtualization From Desktop to Server
Fadly Rizal Ahmad Fadzil
 
PPTX
VIRTUALIZATION-IMPLEMENTATION.pptx-TYPES
soundharya59
 
PPT
Esx short presentation
xKinAnx
 
PPTX
Virtualization
Avni Bindal
 
PPTX
Virtual machine
Shivanshu Purwar
 
PPTX
CC-5 - MOD.pptx Cloud Vertulization nand
AdeelAsghar36
 
PPT
Virtualization in cloud
Ashok Kumar
 
PPTX
VIRTUALIZATION
Junaid Shaikh
 
PDF
Virtualization-the Cloud Enabler by INSPIRE-groups
Praveen Hanchinal
 
PDF
Cloud Computing Virtualization and containers
Selvaraj Kesavan
 
PDF
What's new in System Center 2012 R2: Virtual Machine Manager
Tomica Kaniski
 
PPT
Cloud-computing.ppt
Ajit Mali
 
PDF
Server Virtualization
webhostingguy
 
PPTX
Operating system Virtualization_NEW.pptx
Senthil Vit
 
Virtualizacao de Servidores - Windows
Sergio Maia
 
Client Side Hypervisors - Victoria Russell
russvd1
 
101 Virtualization and Private Cloud
Fazle Abbas Luqmani
 
Server virtualization
ofsorganizer
 
Virtualization, the cloud enabler
Praveen Hanchinal
 
KIIT_Cloud_scaling and Virtualization.pptx
bhaskarkumar0125
 
Cloud Computing vs Virtualization From Desktop to Server
Fadly Rizal Ahmad Fadzil
 
VIRTUALIZATION-IMPLEMENTATION.pptx-TYPES
soundharya59
 
Esx short presentation
xKinAnx
 
Virtualization
Avni Bindal
 
Virtual machine
Shivanshu Purwar
 
CC-5 - MOD.pptx Cloud Vertulization nand
AdeelAsghar36
 
Virtualization in cloud
Ashok Kumar
 
VIRTUALIZATION
Junaid Shaikh
 
Virtualization-the Cloud Enabler by INSPIRE-groups
Praveen Hanchinal
 
Cloud Computing Virtualization and containers
Selvaraj Kesavan
 
What's new in System Center 2012 R2: Virtual Machine Manager
Tomica Kaniski
 
Cloud-computing.ppt
Ajit Mali
 
Server Virtualization
webhostingguy
 
Operating system Virtualization_NEW.pptx
Senthil Vit
 
Ad

More from Hwanju Kim (8)

PPTX
CPU Scheduling for Virtual Desktop Infrastructure
Hwanju Kim
 
PPTX
6. Live VM migration
Hwanju Kim
 
PPTX
4. Memory virtualization and management
Hwanju Kim
 
PPTX
3. CPU virtualization and scheduling
Hwanju Kim
 
PPTX
2. OS vs. VMM
Hwanju Kim
 
PPTX
Demand-Based Coordinated Scheduling for SMP VMs
Hwanju Kim
 
PDF
Scheduler Support for Video-oriented Multimedia on Client-side Virtualization
Hwanju Kim
 
PDF
Task-aware Virtual Machine Scheduling for I/O Performance
Hwanju Kim
 
CPU Scheduling for Virtual Desktop Infrastructure
Hwanju Kim
 
6. Live VM migration
Hwanju Kim
 
4. Memory virtualization and management
Hwanju Kim
 
3. CPU virtualization and scheduling
Hwanju Kim
 
2. OS vs. VMM
Hwanju Kim
 
Demand-Based Coordinated Scheduling for SMP VMs
Hwanju Kim
 
Scheduler Support for Video-oriented Multimedia on Client-side Virtualization
Hwanju Kim
 
Task-aware Virtual Machine Scheduling for I/O Performance
Hwanju Kim
 

Recently uploaded (20)

PDF
CLIP_Internals_and_Architecture.pdf sdvsdv sdv
JoseLuisCahuanaRamos3
 
PPTX
Kel.3_A_Review_on_Internet_of_Things_for_Defense_v3.pptx
Endang Saefullah
 
PPTX
Comparison of Flexible and Rigid Pavements in Bangladesh
Arifur Rahman
 
PPTX
Engineering Quiz ShowEngineering Quiz Show
CalvinLabial
 
PPTX
Stability of IBR Dominated Grids - IEEE PEDG 2025 - short.pptx
ssuser307730
 
PDF
Clustering Algorithms - Kmeans,Min ALgorithm
Sharmila Chidaravalli
 
PDF
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
samueljackson3773
 
PDF
William Stallings - Foundations of Modern Networking_ SDN, NFV, QoE, IoT, and...
lavanya896395
 
PPTX
Computer network Computer network Computer network Computer network
Shrikant317689
 
PDF
13th International Conference on Artificial Intelligence, Soft Computing (AIS...
ijait
 
PPTX
template.pptxr4t5y67yrttttttttttttttttttttttttttttttttttt
SithamparanaathanPir
 
PPTX
Diabetes diabetes diabetes diabetes jsnsmxndm
130SaniyaAbduNasir
 
PDF
Plant Control_EST_85520-01_en_AllChanges_20220127.pdf
DarshanaChathuranga4
 
PDF
Module - 5 Machine Learning-22ISE62.pdf
Dr. Shivashankar
 
PPTX
Electrical_Safety_EMI_EMC_Presentation.pptx
drmaneharshalid
 
PDF
Python Mini Project: Command-Line Quiz Game for School/College Students
MPREETHI7
 
PPTX
darshai cross section and river section analysis
muk7971
 
DOCX
Engineering Geology Field Report to Malekhu .docx
justprashant567
 
PDF
13th International Conference of Security, Privacy and Trust Management (SPTM...
ijcisjournal
 
PPTX
Functions in Python Programming Language
BeulahS2
 
CLIP_Internals_and_Architecture.pdf sdvsdv sdv
JoseLuisCahuanaRamos3
 
Kel.3_A_Review_on_Internet_of_Things_for_Defense_v3.pptx
Endang Saefullah
 
Comparison of Flexible and Rigid Pavements in Bangladesh
Arifur Rahman
 
Engineering Quiz ShowEngineering Quiz Show
CalvinLabial
 
Stability of IBR Dominated Grids - IEEE PEDG 2025 - short.pptx
ssuser307730
 
Clustering Algorithms - Kmeans,Min ALgorithm
Sharmila Chidaravalli
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
samueljackson3773
 
William Stallings - Foundations of Modern Networking_ SDN, NFV, QoE, IoT, and...
lavanya896395
 
Computer network Computer network Computer network Computer network
Shrikant317689
 
13th International Conference on Artificial Intelligence, Soft Computing (AIS...
ijait
 
template.pptxr4t5y67yrttttttttttttttttttttttttttttttttttt
SithamparanaathanPir
 
Diabetes diabetes diabetes diabetes jsnsmxndm
130SaniyaAbduNasir
 
Plant Control_EST_85520-01_en_AllChanges_20220127.pdf
DarshanaChathuranga4
 
Module - 5 Machine Learning-22ISE62.pdf
Dr. Shivashankar
 
Electrical_Safety_EMI_EMC_Presentation.pptx
drmaneharshalid
 
Python Mini Project: Command-Line Quiz Game for School/College Students
MPREETHI7
 
darshai cross section and river section analysis
muk7971
 
Engineering Geology Field Report to Malekhu .docx
justprashant567
 
13th International Conference of Security, Privacy and Trust Management (SPTM...
ijcisjournal
 
Functions in Python Programming Language
BeulahS2
 

1.Introduction to virtualization

  • 2. Outline • Goals • Understanding the benefits of virtualization in IT industry and how to virtualize HW resources • Schedule • Introduction to virtualization • OS vs. VMM • CPU virtualization and scheduling • Memory virtualization and management • I/O virtualization • Live VM migration • Introduction to Systemtap 2/30
  • 3. How to Learn Virtualization? • Conference proceedings • SOSP • Symposium on Operating Systems Principles • OSDI • Symposium on Operating Systems Design and Implementation • ASPLOS • International Conference on Architectural Support for Programming Languages and Operating Systems • USENIX ATC • USENIX Annual Technical Conference • EUROSYS • European Conference on Computer Systems • VEE • International Conference on Virtual Execution Environments • SOCC • ACM Symposium on Cloud Computing • Open source software • Xen, KVM, VirtualBox 3/30
  • 4. What is Virtualization? • Multiple OSes on a single machine • Giving an illusion that each OS is running on real HW • Virtual Machine Monitor (VMM) • Another layer of kernel to virtualize multiple OSes • Also called “hypervisor” • An OS as a supervisor is no more HW-dictator! Hardware Virtual Machine Monitor Windows App App App Linux App App App Mac App App 4/30
  • 5. History – Born and Died (1/4) • 1960s-1970s • High cost of computing machines • IBM VM/370: A VMM for IBM mainframe • 1980s-1990s • But, lost attentions since PC era (1980s) • Cheap HW  No need to share hardware • CPU did not support virtualization well • High engineering cost and overhead Powerful & expensive hardware 5/30
  • 6. History - Reborn (2/4) • The late 1990s • Regain attention for “server consolidation” • Toward cost-effective large-scale computing • Stanford’s research project: Disco • They founded VMware in 1998 Disco: Running Commodity Operating Systems on Scalable Multiprocessors [SOSP’97] 6/30
  • 7. History - Renaissance (3/4) • 1998-2002 • VMware • “Full-virtualization” • Running unmodified OS • Starting with SW-based binary translation • Success in industry and academia • VMware‘s state-of-the-art techniques in SOSP and OSDI • 2003 • Xen • University of Cambridge’s project: Open source!!! • “Xen and Art of Virtualization” [SOSP’03] • “Para-virtualization” • Modified OS for near-native performance: Linux on x86 • 2003- • Virtualization research renaissance based on Xen • 2007: Acquired by Citrix 7/30
  • 8. History - Ubiquitous (4/4) • 2005-2006 • HW-assisted virtualization • x86 virtualization • Intel VT-x & AMD-V • Running unmodified OS with near-native performance • Default functionality now • 2006-now • Cloud computing • Infrastructure-as-a-Service (IaaS) • Virtual desktop infrastructure (VDI) • Mobile virtualization • ARM virtualization technology (Cortex-A15) 8/30
  • 9. Why Virtualization? (1/6) • Efficient resource utilization • Low resource utilization of each server machine • Low total cost of ownership (TCO) • Low cost of infrastructure and energy VM VM VM VMM CPU CPU CPU CPU The Case for Energy-Proportional Computing [IEEE Computer’07] Average CPU utilization of 5000+ Google’s servers Mostly 0-50% utilization 9/30
  • 10. Why Virtualization? (2/6) • Flexible VM relocation • “Live VM migration” • Flexible VM relocation with near-zero downtime • Flexible load balancing • Relieving resource bottleneck VM VM VM CPU CPU CPU CPU 10/30
  • 11. Why Virtualization? (3/6) • Flexible VM relocation • “Live VM migration” • Flexible VM relocation with near-zero downtime • High availability VM SW or HW maintenance (upgrade or fix) 11/30
  • 12. Why Virtualization? (4/6) • Strong isolation • Strong isolation between co-located VMs • Fault containment or isolation • Safe from bugs and malicious attacks VMM VM Hardware VM Safe OS OS An empirical study of operating systems errors [SOSP’01] Hardware App OS App VMM is much smaller than OS  Low trusted computing base (TCB) OSes, especially drivers, are error-prone 12/30
  • 13. Why Virtualization? (5/6) • Multiple OSes on a single device • OS dependency of legacy SW • Linux + Windows, Android + iOS • Different requirements of SW • Virtualization for embedded or mobile systems • RTOS + GPOS • Building secure systems • Security-enhanced OS + GPOS Allowing for GPOS and RTOS: The unique virtualization needs of mission-critical embedded systems, TenASysTerra: A Virtual Machine-Based Platform for Trusted Computing [SOSP’03] Trusted VMM 13/30
  • 14. Why Virtualization? (6/6) • Other benefits • Strong security monitoring • Security monitoring outside OSes • Ease of deployment • Virtual appliance • A bundle of OS and applications • Flexible testing and debugging • Building distributed environments on a single machine • Kernel development and debugging • VM-based recording and replaying 14/30
  • 15. Use Cases • Cloud computing • Virtual desktop infrastructure • Mobile virtualization 15/30
  • 16. Virtualization & Cloud Computing • Virtualized data centers Virtualization 1.x: Near term Virtualization 2.0: Emerging Virtualization 3.0: Future Virtualization 3.0 The fully virtualized datacenter for cloud services 2013+ Virtualization 1.x Virtualization 2.0 2009 출처: IDC 2010 report 16/30
  • 17. Virtualization & Cloud Computing • VM-based resource pool for various demands • Infrastructure-as-a-Service (IaaS) 17/30
  • 18. Virtualization & Cloud Computing • Many providers use commercial & open-source VMMs Virtualization Solutions Cloud Providers 18/30
  • 19. Virtual Desktop Infrastructure (VDI) • Desktop provisioning Dedicated workstations VM VM VM VM VM - Energy wastage by idle desktops - Resource underutilization - High management cost - High maintenance cost - Low level of security + Energy savings by consolidation + High resource utilization + Low management cost (flexible HW/SW provisioning) + Low maintenance cost (dynamic HW/SW upgrade) + High level of security (centralized data containment) VM-based shared environments 19/30
  • 20. Virtual Desktop Infrastructure (VDI) • VDI is also hot in Korea 20/30
  • 21. Virtual Desktop Infrastructure (VDI) • VMware VDI • Pioneer of VDI 21/30
  • 22. Mobile Virtualization • Trends of consumer electronics • Digital convergence • What do consumer electronics(CE) devices want to achieve? Reliability Trustworthiness for primary functions Extensibility Flexibility for adding features as needed Business Phone Personal Phone 22/30
  • 23. Mobile Virtualization • BYOD: Bring Your Own Device • Consolidating business and personal computing environments on a single device Business VM Personal VM Hypervisor Managed domain 23/30
  • 24. Mobile Virtualization • Academia • Columbia university’s projects • Cells [SOSP’11] • KVM for ARM [OLS’10] • Cortex-A8, A9 • Now running on A15 Cells: A Virtual Mobile Smartphone Architecture [SOSP’11] Linaro Ubuntu 11.04 for ARM running in VM by KVM/ARM (Cortex-A15 in Fast Model 6.1) OS-level virtualization 24/30
  • 25. Mobile Virtualization • Embracing all apps in a unified market • iOS + Android + Windows • Technically possible, but not yet by industry • Currently, not much attractive. • Multiple Androids • Android + RTOS • Issues • Performance, performance, performance… • Graphics acceleration  Challenging • CPU, memory limitation • High-end smartphones can resolve this limitation 25/30
  • 26. Basic Terminologies • Types of VMMs • Type-1 vs. Type-2 • Virtualization methods • Full-virtualization vs. Para-virtualization 26/30
  • 27. Type-1 vs. Type-2 • Depending on what sits right on HW Guest VM Guest OS Host OS VMM HW Guest VM Guest OS VMM Guest VM Guest OS HW Guest VM Guest OS Type-1: VMM on HW Type-2: Host OS on HW • Xen, VMware ESX server, Hyper-V • Mostly for server, but not limited • VMM by default • OS-independent VMM • KVM, VMware Workstation, VirtualBox • Mostly for client devices, but not limited • VMM on demand • OS-dependent VMM 27/30
  • 28. Xen: Type-1 VMM • Type-1 VMM • Para-virtualization and full-virtualization • Domain0 • Privileged VM for guest VM (domainU) management • Handling I/O operations requested from domainUs • Including native device drivers to directly access HW DomainU (Guest VM) Guest OS Xen VMM DomainU Guest VM Guest OS Domain0 (Privileged VM) Linux 28/30
  • 29. KVM: Type-2 VMM • Type-2 VMM for Linux as a host OS • Based on HW-assisted virtualization • Linux kernel mainline (2.6.20~) Guest VM Guest OS Host OS (Linux) KVM VMM (kernel module) QEMU vCPU vCPU User space Kernel space Linux Process Linux Thread Linux Thread Linux Thread I/O emulation 29/30
  • 30. Full- vs. Para-virtualization • Depending on whether OS source is modified • Full-virtualization = No OS source modification • SW-based full virtualization • Emulation • HW-based full virtualization • HW-assisted virtualization • Para-virtualization = OS source modification • Virtualization-aware OS • Bridging semantic gap between VMM and OS • Mostly for performance Today’s virtualization solutions adopt both approaches for optimized performance 30/30