SlideShare a Scribd company logo
1 of 19
Download to read offline
Challenges 
in 
designing 
a 
type 
1 
hypervisor 
for 
ARM 
v7 
VE 
Manish 
Jaggi 
manish.jaggi@gmail.com 
http://in.linkedin.com/in/manishjaggi
Hypervisor 
Layering 
in 
Software 
Stack 
• Type 
1 
HyperOne, 
Xen, 
PikeOS, 
OKL4, 
HyperV, 
Vmware 
ESX 
! 
• Type 
2 
KVM, 
VirtualBox, 
Virtual 
PC, 
Parallels, 
BlueStacks 
Hypervisor 
Hardware 
UserSpace 
Kernel 
Hardware 
OS 
Kernel 
UserSpace 
Kernel 
Hypervisor 
VM1 VM2 
UserSpace 
Kernel 
UserSpace
Monolithic 
vs 
Microkernel 
Design
HyperOne 
Microkernel 
Design.. 
VM2 Driver 
Device 
Drivers 
Hypervisor 
Hardware 
VM 
VM1 
Root 
InterVM 
IPC 
Virtual 
Scheduling Memory 
Interrupt 
Routing 
Virtualization 
Stack 
Device 
Drivers Device 
Drivers
ARM 
v7 
Virtualization 
Extensions 
• Hypervisor 
Privilege 
Mode 
(PL2) 
NS 
• Different 
set 
of 
CP15 
registers 
for 
hypervisor 
• Stage 
2 
MMU 
and 
SMMU 
• GIC 
Virtual 
CPU 
I/f 
• Timer 
Virtualization 
(Virtual 
Timer 
Interrupts 
for 
guest 
/ 
hypervisor)
Guest 
Stage 
2 
MMU 
Translation
GICv2
SMMU
Bare 
Minimal 
Hypervisor 
• A 
hypervisor 
boots 
up 
like 
a 
normal 
smp 
os 
– MMU 
/ 
GIC 
/ 
UART 
/ 
Timer 
drivers 
– Board 
specific 
/ 
platform 
specific 
code 
– Needs 
a 
device 
tree 
– Has 
a 
console 
(shell) 
• Hypervisor 
functions 
– Trap 
guests 
accesses 
– Emulate 
– Load/run/suspend/resume 
guests
IPC 
Channels 
vm_t 
Core_regs 
Cp15_regs 
interrupts 
vcpu_t 
VM 
State 
vGIC 
State 
virtual 
devices 
state 
Memory 
Assigned 
Hypervisor 
keeps 
the 
state 
of 
each 
VM 
and 
its 
associated 
vcpus. 
! 
A 
VM 
has 
a 
machine 
definition 
and 
physical 
and 
virtual 
devices 
connected 
to 
it 
! 
State 
of 
virtual 
devices 
is 
kept 
with 
hypervisor 
like 
VGIC, 
console, 
network 
and 
other 
virtual 
devices. 
! 
VCPU 
has 
cpu_regs 
context, 
the 
cp15 
regs 
and 
the 
descriptors 
of 
interrupts 
injected 
into 
the 
vcpu. 
! 
This 
state 
is 
saved 
and 
restored 
as 
and 
when 
the 
VM 
or 
vcpu 
is 
scheduled 
out 
/ 
in. 
! 
There 
are 
two 
types 
of 
context 
saves, 
Shallow 
and 
deep.
Hypervisor 
Exception 
Handling 
• Hypervisor 
handles 
exceptions 
originated 
from 
hypervisor 
mode 
• Hypervisor 
also 
handles 
the 
exceptions 
originated 
from 
Guest 
Mode, 
these 
are 
routed 
to 
hypervisor 
as 
hypervisor 
trap 
and 
hypervisor 
identifies 
the 
type 
of 
exception 
using 
a 
syndrome 
register. 
• Virtual 
Devices’ 
Memory 
mapped 
address 
space 
access 
is 
trapped 
by 
hypervisor 
and 
the 
read 
write 
is 
emulated 
in 
hypervisor 
mode 
• Guests 
can 
also 
issue 
hyper 
calls 
to 
the 
hypervisor. 
These 
are 
mainly 
used 
by 
para 
virtualised 
drivers. 
• Privileged 
instructions 
such 
as 
WFI 
and 
WFE 
trap 
into 
hypervisor.
Guest 
Interrupt 
Handling 
• Hypervisor 
emulated 
GICD 
and 
injects 
interrupts 
in 
guest 
using 
GICH 
• Hypervisor 
programs 
the 
Link 
registers 
• Guest 
access 
the 
virtual 
CPU 
I/ 
f 
in 
the 
GIC 
itself, 
no 
emulation 
is 
required 
• There 
are 
2 
methods 
for 
hypervisor 
to 
b 
notified 
that 
guest 
has 
deactivated 
the 
interrupt 
• Maintenance 
Interrupt 
• UnderFlow 
Interrupt 
GICD 
Driver 
Guest 
Hypervisor 
VCPU 
I/F CPU 
I/F Hyp 
Trap 
I/f Distributor 
Level 
Interrupt 
UART SoC 
GIC 
GICD 
Emulation 
GICC 
Driver
• ARM 
Timer 
Virtualization 
provides 
a 
Physical 
timer 
register 
and 
a 
Virtual 
Timer 
register. 
Virtual 
Timer 
is 
an 
offset 
from 
physical 
timer 
• Hypervisor 
Programs 
the 
CNTVOFF 
register 
before 
guest 
is 
resumed. 
• ARM 
provides 
separate 
timer 
interrupt 
for 
hypervisor 
and 
guest. 
• Timer 
interrupt 
is 
injected 
in 
same 
way 
as 
other 
interrupts
Managing 
Virtual 
Device 
-­‐ 
Virtio 
MMIO 
• virtio 
is 
an 
abstraction 
layer 
over 
devices 
in 
a 
paravirtualized 
hypervisor. 
• virtio 
mmio 
does 
not 
require 
a 
PCI 
device
15
Guest 
Debug 
Support 
• Debugging 
a 
guest 
can 
be 
done 
on 
hypervisor 
console 
• for 
dumping 
guest 
state 
on 
console 
• for 
setting 
software 
breakpoints 
• or 
gdb 
interface 
can 
be 
added 
in 
hypervisor 
to 
debug 
a 
guest
VM 
Management 
Summary 
• Context 
Save 
and 
Restore 
• Booting 
and 
Loading 
• Scheduling 
• VCPU 
Management 
• Remote 
Guest 
Image 
loading
Remote 
Device 
Management 
A typical use case of Virtual Machines on a device is an 
enterprise Virtual Machine to provide a secure and 
separate workspace environment for employees. 
! 
Basic management operations include creating/ 
deleting, resuming/suspending and powering on/off of 
a Virtual Machine 
18
Questions

More Related Content

What's hot

Fosdem 17 - Towards a HVM-like Dom0 for Xen
Fosdem 17 - Towards a HVM-like Dom0 for XenFosdem 17 - Towards a HVM-like Dom0 for Xen
Fosdem 17 - Towards a HVM-like Dom0 for XenThe Linux Foundation
 
XPDS14 - Xen on ARM: Status and Performance - Stefano Stabellini, Citrix
XPDS14 - Xen on ARM: Status and Performance - Stefano Stabellini, CitrixXPDS14 - Xen on ARM: Status and Performance - Stefano Stabellini, Citrix
XPDS14 - Xen on ARM: Status and Performance - Stefano Stabellini, CitrixThe Linux Foundation
 
ACRN vMeet-Up EU 2021 - Real Time Management and Performance Optimization
ACRN vMeet-Up EU 2021 - Real Time Management and Performance OptimizationACRN vMeet-Up EU 2021 - Real Time Management and Performance Optimization
ACRN vMeet-Up EU 2021 - Real Time Management and Performance OptimizationProject ACRN
 
ACRN vMeet-Up EU 2021 - Boot Process and Secure Boot
ACRN vMeet-Up EU 2021 - Boot Process and Secure BootACRN vMeet-Up EU 2021 - Boot Process and Secure Boot
ACRN vMeet-Up EU 2021 - Boot Process and Secure BootProject ACRN
 
Project ACRN Device Passthrough Introduction
Project ACRN Device Passthrough IntroductionProject ACRN Device Passthrough Introduction
Project ACRN Device Passthrough IntroductionProject ACRN
 
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...The Linux Foundation
 
Project ACRN Device Model architecture introduction
Project ACRN Device Model architecture introductionProject ACRN Device Model architecture introduction
Project ACRN Device Model architecture introductionProject ACRN
 
ACRN vMeet-Up EU 2021 - Bridging Orchestrator and Hard Realtime Workload Cons...
ACRN vMeet-Up EU 2021 - Bridging Orchestrator and Hard Realtime Workload Cons...ACRN vMeet-Up EU 2021 - Bridging Orchestrator and Hard Realtime Workload Cons...
ACRN vMeet-Up EU 2021 - Bridging Orchestrator and Hard Realtime Workload Cons...Project ACRN
 
Project ACRN system debug
Project ACRN system debugProject ACRN system debug
Project ACRN system debugProject ACRN
 
Project ACRN: SR-IOV implementation
Project ACRN: SR-IOV implementationProject ACRN: SR-IOV implementation
Project ACRN: SR-IOV implementationGeoffroy Van Cutsem
 
Project ACRN configuration scenarios and config tool
Project ACRN configuration scenarios and config toolProject ACRN configuration scenarios and config tool
Project ACRN configuration scenarios and config toolProject ACRN
 
Running Dual Android Xen Instances on Nexus 10
Running Dual Android Xen Instances on Nexus 10Running Dual Android Xen Instances on Nexus 10
Running Dual Android Xen Instances on Nexus 10Samsung Open Source Group
 
Xen on ARM for embedded and IoT: from secure containers to dom0less systems
Xen on ARM for embedded and IoT: from secure containers to dom0less systemsXen on ARM for embedded and IoT: from secure containers to dom0less systems
Xen on ARM for embedded and IoT: from secure containers to dom0less systemsStefano Stabellini
 
Dave Gilbert - KVM and QEMU
Dave Gilbert - KVM and QEMUDave Gilbert - KVM and QEMU
Dave Gilbert - KVM and QEMUDanny Abukalam
 
ACRN vMeet-Up EU 2021 - Introduction and Architecture Look Forward
ACRN vMeet-Up EU 2021 - Introduction and Architecture Look ForwardACRN vMeet-Up EU 2021 - Introduction and Architecture Look Forward
ACRN vMeet-Up EU 2021 - Introduction and Architecture Look ForwardProject ACRN
 
ACRN vMeet-Up EU 2021 - hypervisor new platform enabling
ACRN vMeet-Up EU 2021 - hypervisor new platform enablingACRN vMeet-Up EU 2021 - hypervisor new platform enabling
ACRN vMeet-Up EU 2021 - hypervisor new platform enablingProject ACRN
 
ACRN vMeet-Up EU 2021 - installation and configuration introduction
ACRN vMeet-Up EU 2021 - installation and configuration introductionACRN vMeet-Up EU 2021 - installation and configuration introduction
ACRN vMeet-Up EU 2021 - installation and configuration introductionProject ACRN
 
XPDS13: Performance Optimization on Xen-based Android Device - Jack Ren, Inte...
XPDS13: Performance Optimization on Xen-based Android Device - Jack Ren, Inte...XPDS13: Performance Optimization on Xen-based Android Device - Jack Ren, Inte...
XPDS13: Performance Optimization on Xen-based Android Device - Jack Ren, Inte...The Linux Foundation
 
ACRN vMeet-Up EU 2021 - functional safety design and certification plan
ACRN vMeet-Up EU 2021 -  functional safety design and certification planACRN vMeet-Up EU 2021 -  functional safety design and certification plan
ACRN vMeet-Up EU 2021 - functional safety design and certification planProject ACRN
 

What's hot (20)

Fosdem 17 - Towards a HVM-like Dom0 for Xen
Fosdem 17 - Towards a HVM-like Dom0 for XenFosdem 17 - Towards a HVM-like Dom0 for Xen
Fosdem 17 - Towards a HVM-like Dom0 for Xen
 
XPDS14 - Xen on ARM: Status and Performance - Stefano Stabellini, Citrix
XPDS14 - Xen on ARM: Status and Performance - Stefano Stabellini, CitrixXPDS14 - Xen on ARM: Status and Performance - Stefano Stabellini, Citrix
XPDS14 - Xen on ARM: Status and Performance - Stefano Stabellini, Citrix
 
ACRN vMeet-Up EU 2021 - Real Time Management and Performance Optimization
ACRN vMeet-Up EU 2021 - Real Time Management and Performance OptimizationACRN vMeet-Up EU 2021 - Real Time Management and Performance Optimization
ACRN vMeet-Up EU 2021 - Real Time Management and Performance Optimization
 
ACRN vMeet-Up EU 2021 - Boot Process and Secure Boot
ACRN vMeet-Up EU 2021 - Boot Process and Secure BootACRN vMeet-Up EU 2021 - Boot Process and Secure Boot
ACRN vMeet-Up EU 2021 - Boot Process and Secure Boot
 
Project ACRN Device Passthrough Introduction
Project ACRN Device Passthrough IntroductionProject ACRN Device Passthrough Introduction
Project ACRN Device Passthrough Introduction
 
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
 
Project ACRN Device Model architecture introduction
Project ACRN Device Model architecture introductionProject ACRN Device Model architecture introduction
Project ACRN Device Model architecture introduction
 
ACRN vMeet-Up EU 2021 - Bridging Orchestrator and Hard Realtime Workload Cons...
ACRN vMeet-Up EU 2021 - Bridging Orchestrator and Hard Realtime Workload Cons...ACRN vMeet-Up EU 2021 - Bridging Orchestrator and Hard Realtime Workload Cons...
ACRN vMeet-Up EU 2021 - Bridging Orchestrator and Hard Realtime Workload Cons...
 
Project ACRN system debug
Project ACRN system debugProject ACRN system debug
Project ACRN system debug
 
Project ACRN: SR-IOV implementation
Project ACRN: SR-IOV implementationProject ACRN: SR-IOV implementation
Project ACRN: SR-IOV implementation
 
Project ACRN configuration scenarios and config tool
Project ACRN configuration scenarios and config toolProject ACRN configuration scenarios and config tool
Project ACRN configuration scenarios and config tool
 
Running Dual Android Xen Instances on Nexus 10
Running Dual Android Xen Instances on Nexus 10Running Dual Android Xen Instances on Nexus 10
Running Dual Android Xen Instances on Nexus 10
 
Xen Project for ARM Servers
Xen Project for ARM ServersXen Project for ARM Servers
Xen Project for ARM Servers
 
Xen on ARM for embedded and IoT: from secure containers to dom0less systems
Xen on ARM for embedded and IoT: from secure containers to dom0less systemsXen on ARM for embedded and IoT: from secure containers to dom0less systems
Xen on ARM for embedded and IoT: from secure containers to dom0less systems
 
Dave Gilbert - KVM and QEMU
Dave Gilbert - KVM and QEMUDave Gilbert - KVM and QEMU
Dave Gilbert - KVM and QEMU
 
ACRN vMeet-Up EU 2021 - Introduction and Architecture Look Forward
ACRN vMeet-Up EU 2021 - Introduction and Architecture Look ForwardACRN vMeet-Up EU 2021 - Introduction and Architecture Look Forward
ACRN vMeet-Up EU 2021 - Introduction and Architecture Look Forward
 
ACRN vMeet-Up EU 2021 - hypervisor new platform enabling
ACRN vMeet-Up EU 2021 - hypervisor new platform enablingACRN vMeet-Up EU 2021 - hypervisor new platform enabling
ACRN vMeet-Up EU 2021 - hypervisor new platform enabling
 
ACRN vMeet-Up EU 2021 - installation and configuration introduction
ACRN vMeet-Up EU 2021 - installation and configuration introductionACRN vMeet-Up EU 2021 - installation and configuration introduction
ACRN vMeet-Up EU 2021 - installation and configuration introduction
 
XPDS13: Performance Optimization on Xen-based Android Device - Jack Ren, Inte...
XPDS13: Performance Optimization on Xen-based Android Device - Jack Ren, Inte...XPDS13: Performance Optimization on Xen-based Android Device - Jack Ren, Inte...
XPDS13: Performance Optimization on Xen-based Android Device - Jack Ren, Inte...
 
ACRN vMeet-Up EU 2021 - functional safety design and certification plan
ACRN vMeet-Up EU 2021 -  functional safety design and certification planACRN vMeet-Up EU 2021 -  functional safety design and certification plan
ACRN vMeet-Up EU 2021 - functional safety design and certification plan
 

Viewers also liked

Fossetcon: Crash Course on Open Source Cloud Computing
Fossetcon: Crash Course on Open Source Cloud ComputingFossetcon: Crash Course on Open Source Cloud Computing
Fossetcon: Crash Course on Open Source Cloud ComputingMark Hinkle
 
Develop Your Own Operating Systems using Cheap ARM Boards
Develop Your Own Operating Systems using Cheap ARM BoardsDevelop Your Own Operating Systems using Cheap ARM Boards
Develop Your Own Operating Systems using Cheap ARM BoardsNational Cheng Kung University
 
F9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
F9: A Secure and Efficient Microkernel Built for Deeply Embedded SystemsF9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
F9: A Secure and Efficient Microkernel Built for Deeply Embedded SystemsNational Cheng Kung University
 
오픈스택! 이틀이면할수있다! 시즌2
오픈스택! 이틀이면할수있다! 시즌2오픈스택! 이틀이면할수있다! 시즌2
오픈스택! 이틀이면할수있다! 시즌2Nalee Jang
 
BUD17-510: Power management in Linux together with secure firmware
BUD17-510: Power management in Linux together with secure firmwareBUD17-510: Power management in Linux together with secure firmware
BUD17-510: Power management in Linux together with secure firmwareLinaro
 

Viewers also liked (7)

Fossetcon: Crash Course on Open Source Cloud Computing
Fossetcon: Crash Course on Open Source Cloud ComputingFossetcon: Crash Course on Open Source Cloud Computing
Fossetcon: Crash Course on Open Source Cloud Computing
 
Embedded Hypervisor for ARM
Embedded Hypervisor for ARMEmbedded Hypervisor for ARM
Embedded Hypervisor for ARM
 
Develop Your Own Operating Systems using Cheap ARM Boards
Develop Your Own Operating Systems using Cheap ARM BoardsDevelop Your Own Operating Systems using Cheap ARM Boards
Develop Your Own Operating Systems using Cheap ARM Boards
 
F9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
F9: A Secure and Efficient Microkernel Built for Deeply Embedded SystemsF9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
F9: A Secure and Efficient Microkernel Built for Deeply Embedded Systems
 
Xvisor: embedded and lightweight hypervisor
Xvisor: embedded and lightweight hypervisorXvisor: embedded and lightweight hypervisor
Xvisor: embedded and lightweight hypervisor
 
오픈스택! 이틀이면할수있다! 시즌2
오픈스택! 이틀이면할수있다! 시즌2오픈스택! 이틀이면할수있다! 시즌2
오픈스택! 이틀이면할수있다! 시즌2
 
BUD17-510: Power management in Linux together with secure firmware
BUD17-510: Power management in Linux together with secure firmwareBUD17-510: Power management in Linux together with secure firmware
BUD17-510: Power management in Linux together with secure firmware
 

Similar to Embedded Systems Conference 2014 Presentation

PCI Pass-through - FreeBSD VM on Hyper-V (MeetBSD California 2016)
PCI Pass-through - FreeBSD VM on Hyper-V (MeetBSD California 2016)PCI Pass-through - FreeBSD VM on Hyper-V (MeetBSD California 2016)
PCI Pass-through - FreeBSD VM on Hyper-V (MeetBSD California 2016)iXsystems
 
Implementing SR-IOv failover for Windows guests during live migration
Implementing SR-IOv failover for Windows guests during live migrationImplementing SR-IOv failover for Windows guests during live migration
Implementing SR-IOv failover for Windows guests during live migrationYan Vugenfirer
 
Sierraware ARM hypervisor
Sierraware ARM hypervisor Sierraware ARM hypervisor
Sierraware ARM hypervisor Sierraware
 
Cloud Computing Virtualization and containers
Cloud Computing Virtualization and containersCloud Computing Virtualization and containers
Cloud Computing Virtualization and containersSelvaraj Kesavan
 
Unit 2 Virtualization Part I.pptx
Unit 2 Virtualization Part I.pptxUnit 2 Virtualization Part I.pptx
Unit 2 Virtualization Part I.pptxNayanrai14
 
Hardware support for efficient virtualization
Hardware support for efficient virtualizationHardware support for efficient virtualization
Hardware support for efficient virtualizationLennox Wu
 
5. IO virtualization
5. IO virtualization5. IO virtualization
5. IO virtualizationHwanju Kim
 
Intro to Deploying and administering server virtualization with Hyper-V and S...
Intro to Deploying and administering server virtualization with Hyper-V and S...Intro to Deploying and administering server virtualization with Hyper-V and S...
Intro to Deploying and administering server virtualization with Hyper-V and S...Unitek Eduation
 
Module 1b - Hyper-v Configuration.pptx
Module 1b - Hyper-v Configuration.pptxModule 1b - Hyper-v Configuration.pptx
Module 1b - Hyper-v Configuration.pptxJoshLagan
 
Cloud os launch journey to cloud os with windows server 2012 r2
Cloud os launch   journey to cloud os with windows server 2012 r2 Cloud os launch   journey to cloud os with windows server 2012 r2
Cloud os launch journey to cloud os with windows server 2012 r2 Susantha Silva
 
Virtualization with Client Hyper V in Windows 8
Virtualization with Client Hyper V in Windows 8Virtualization with Client Hyper V in Windows 8
Virtualization with Client Hyper V in Windows 8Haritha Thilakarathne
 

Similar to Embedded Systems Conference 2014 Presentation (20)

5 kvm arm
5 kvm arm5 kvm arm
5 kvm arm
 
VSS-2.pdf
VSS-2.pdfVSS-2.pdf
VSS-2.pdf
 
Server virtualization
Server virtualizationServer virtualization
Server virtualization
 
PCI Pass-through - FreeBSD VM on Hyper-V (MeetBSD California 2016)
PCI Pass-through - FreeBSD VM on Hyper-V (MeetBSD California 2016)PCI Pass-through - FreeBSD VM on Hyper-V (MeetBSD California 2016)
PCI Pass-through - FreeBSD VM on Hyper-V (MeetBSD California 2016)
 
Implementing SR-IOv failover for Windows guests during live migration
Implementing SR-IOv failover for Windows guests during live migrationImplementing SR-IOv failover for Windows guests during live migration
Implementing SR-IOv failover for Windows guests during live migration
 
Hypervisors
HypervisorsHypervisors
Hypervisors
 
Sierraware ARM hypervisor
Sierraware ARM hypervisor Sierraware ARM hypervisor
Sierraware ARM hypervisor
 
Cloud Computing Virtualization and containers
Cloud Computing Virtualization and containersCloud Computing Virtualization and containers
Cloud Computing Virtualization and containers
 
virtual machine.ppt
virtual machine.pptvirtual machine.ppt
virtual machine.ppt
 
Unit 2 Virtualization Part I.pptx
Unit 2 Virtualization Part I.pptxUnit 2 Virtualization Part I.pptx
Unit 2 Virtualization Part I.pptx
 
Hardware support for efficient virtualization
Hardware support for efficient virtualizationHardware support for efficient virtualization
Hardware support for efficient virtualization
 
5. IO virtualization
5. IO virtualization5. IO virtualization
5. IO virtualization
 
Intro to Deploying and administering server virtualization with Hyper-V and S...
Intro to Deploying and administering server virtualization with Hyper-V and S...Intro to Deploying and administering server virtualization with Hyper-V and S...
Intro to Deploying and administering server virtualization with Hyper-V and S...
 
Vcp6.7 episode 1
Vcp6.7 episode 1Vcp6.7 episode 1
Vcp6.7 episode 1
 
Module 1b - Hyper-v Configuration.pptx
Module 1b - Hyper-v Configuration.pptxModule 1b - Hyper-v Configuration.pptx
Module 1b - Hyper-v Configuration.pptx
 
Virtualization & tipping point
Virtualization & tipping pointVirtualization & tipping point
Virtualization & tipping point
 
Virtualization
VirtualizationVirtualization
Virtualization
 
Cloud os launch journey to cloud os with windows server 2012 r2
Cloud os launch   journey to cloud os with windows server 2012 r2 Cloud os launch   journey to cloud os with windows server 2012 r2
Cloud os launch journey to cloud os with windows server 2012 r2
 
17-virtualization.pptx
17-virtualization.pptx17-virtualization.pptx
17-virtualization.pptx
 
Virtualization with Client Hyper V in Windows 8
Virtualization with Client Hyper V in Windows 8Virtualization with Client Hyper V in Windows 8
Virtualization with Client Hyper V in Windows 8
 

Recently uploaded

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 

Recently uploaded (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Embedded Systems Conference 2014 Presentation

  • 1. Challenges in designing a type 1 hypervisor for ARM v7 VE Manish Jaggi manish.jaggi@gmail.com http://in.linkedin.com/in/manishjaggi
  • 2. Hypervisor Layering in Software Stack • Type 1 HyperOne, Xen, PikeOS, OKL4, HyperV, Vmware ESX ! • Type 2 KVM, VirtualBox, Virtual PC, Parallels, BlueStacks Hypervisor Hardware UserSpace Kernel Hardware OS Kernel UserSpace Kernel Hypervisor VM1 VM2 UserSpace Kernel UserSpace
  • 4. HyperOne Microkernel Design.. VM2 Driver Device Drivers Hypervisor Hardware VM VM1 Root InterVM IPC Virtual Scheduling Memory Interrupt Routing Virtualization Stack Device Drivers Device Drivers
  • 5. ARM v7 Virtualization Extensions • Hypervisor Privilege Mode (PL2) NS • Different set of CP15 registers for hypervisor • Stage 2 MMU and SMMU • GIC Virtual CPU I/f • Timer Virtualization (Virtual Timer Interrupts for guest / hypervisor)
  • 6. Guest Stage 2 MMU Translation
  • 9. Bare Minimal Hypervisor • A hypervisor boots up like a normal smp os – MMU / GIC / UART / Timer drivers – Board specific / platform specific code – Needs a device tree – Has a console (shell) • Hypervisor functions – Trap guests accesses – Emulate – Load/run/suspend/resume guests
  • 10. IPC Channels vm_t Core_regs Cp15_regs interrupts vcpu_t VM State vGIC State virtual devices state Memory Assigned Hypervisor keeps the state of each VM and its associated vcpus. ! A VM has a machine definition and physical and virtual devices connected to it ! State of virtual devices is kept with hypervisor like VGIC, console, network and other virtual devices. ! VCPU has cpu_regs context, the cp15 regs and the descriptors of interrupts injected into the vcpu. ! This state is saved and restored as and when the VM or vcpu is scheduled out / in. ! There are two types of context saves, Shallow and deep.
  • 11. Hypervisor Exception Handling • Hypervisor handles exceptions originated from hypervisor mode • Hypervisor also handles the exceptions originated from Guest Mode, these are routed to hypervisor as hypervisor trap and hypervisor identifies the type of exception using a syndrome register. • Virtual Devices’ Memory mapped address space access is trapped by hypervisor and the read write is emulated in hypervisor mode • Guests can also issue hyper calls to the hypervisor. These are mainly used by para virtualised drivers. • Privileged instructions such as WFI and WFE trap into hypervisor.
  • 12. Guest Interrupt Handling • Hypervisor emulated GICD and injects interrupts in guest using GICH • Hypervisor programs the Link registers • Guest access the virtual CPU I/ f in the GIC itself, no emulation is required • There are 2 methods for hypervisor to b notified that guest has deactivated the interrupt • Maintenance Interrupt • UnderFlow Interrupt GICD Driver Guest Hypervisor VCPU I/F CPU I/F Hyp Trap I/f Distributor Level Interrupt UART SoC GIC GICD Emulation GICC Driver
  • 13. • ARM Timer Virtualization provides a Physical timer register and a Virtual Timer register. Virtual Timer is an offset from physical timer • Hypervisor Programs the CNTVOFF register before guest is resumed. • ARM provides separate timer interrupt for hypervisor and guest. • Timer interrupt is injected in same way as other interrupts
  • 14. Managing Virtual Device -­‐ Virtio MMIO • virtio is an abstraction layer over devices in a paravirtualized hypervisor. • virtio mmio does not require a PCI device
  • 15. 15
  • 16. Guest Debug Support • Debugging a guest can be done on hypervisor console • for dumping guest state on console • for setting software breakpoints • or gdb interface can be added in hypervisor to debug a guest
  • 17. VM Management Summary • Context Save and Restore • Booting and Loading • Scheduling • VCPU Management • Remote Guest Image loading
  • 18. Remote Device Management A typical use case of Virtual Machines on a device is an enterprise Virtual Machine to provide a secure and separate workspace environment for employees. ! Basic management operations include creating/ deleting, resuming/suspending and powering on/off of a Virtual Machine 18