8/13/2019 KVM Architecture LK2010
1/20
Copyright Siemens AG 2010. All rights reserved.
Corporate Technology
Architecture of the Kernel!ased"irtual #achine $K"#%
Jan Kiszka, Siemens AG, CT T DE IT 1
Corporate Competence Center Embedded Linux
an!kiszka"siemens!com
8/13/2019 KVM Architecture LK2010
2/20
S#ide $ $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
Agenda
&ntroduction
'asic K"# model
#emory
A(&
)ptimi*ations
(aravirtual devices
)utloo+
8/13/2019 KVM Architecture LK2010
3/20
S#ide ( $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
"irtuali*ation of Commodity Computers
C(,
##,
&nstructionSet
Cloc+s-
Timers
'usses
-&) /evices
&nterrupt
Controllers
#emory
)nChipesources
8/13/2019 KVM Architecture LK2010
4/20
S#ide - $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
"irtuali*ing the 3 &nstruction Set Architecture
3 originally virtuali*ation 4unfriendly5
.o *ard/are pro0isions
Instructions be*a0e dierent# dependin+ on pri0i#e+e context
2erormance suered on trap&and&emu#ate
CISC nature comp#icates instruction rep#acements
6arly approaches to 3 virtuali*ation
3inar trans#ation 4e!+! 56/are7
Execute substitution code or pri0i#e+ed +uest code
6a re8uire substantia# rep#acements to preser0e i##usion
C29 para0irtua#ization 4e!+ :en7
Guest is a/are o instruction restrictions
;per0isor pro0ides rep#acement ser0ices 4*perca##s7
8/13/2019 KVM Architecture LK2010
5/20
S#ide = $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
7ard8areassisted 3 C(, "irtuali*ation
T8o variants
Inte#>s 5irtua#ization Tec*no#o+, 5T&x
A6D&5 4aka Secure 5irtua# 6ac*ine7
&dentical core concept
C(,($1
%
7ostState
GuestState
"C(,921
0
8/13/2019 KVM Architecture LK2010
6/20
S#ide ? $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
Advent and 6volution of K"#
&ntroduced to ma+e "TA#/" availa!le to user space
Exposes 0irtua#ization eatures secure#
Interace@ de0k0m
#erged :uic+ly
A0ai#ab#e since $!?!$% 4$%%?7 Brom irst LK6L postin+ to mer+e@ ( mont*s
ne reason@ ori+ina## 1%% ort*o+ona# to core kerne#
6volved significantly since then
2orted to urt*er arc*itectures 4s('%, 2o/er2C, IA?-7
A#/as /it* #atest x? 0irtua#ization eatures 3ecame reco+nized F dri0in+ part o Linux
8/13/2019 KVM Architecture LK2010
7/20S#ide $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
The K"# #odel
(rocesses can create
virtual machines
"#s can contain
6emor
5irtua# C29s In&kerne# de0ice mode#s
Guest physical memory part of
creating process; address space
"C(,s run in processeecution contets
2rocess usua## maps
5C29s on t*reads
7ypervisor
(rocess
8/13/2019 KVM Architecture LK2010
8/20S#ide $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
Architectural Advantages of the K"# #odel
(roimity of guest and user space hypervisor
n# one address space s/itc*@ +uest H *ost
Less resc*edu#in+
#assive t /*at t*is7
I stacks
2o/er mana+ement
;ost C29 *ot&p#u++in+
#assive
8/13/2019 KVM Architecture LK2010
9/20S#ide ' $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
"C(, 6ecution =lo8 $K"# "ie8%
6ecute nativeguest code
un,pdatecontet>
raise &?s
Save 7ost>
8/13/2019 KVM Architecture LK2010
10/20S#ide 1% $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
K"# #emory #odel
Slot!ased guest memory
6aps +uest p*sica# to
*ost 0irtua# memor
8/13/2019 KVM Architecture LK2010
11/20S#ide 11 $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
K"# A(& )vervie8
Step B1 open dev+vm
Three groups of &)CT
8/13/2019 KVM Architecture LK2010
12/20S#ide 1$ $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
'asic K"# &)CT
8/13/2019 KVM Architecture LK2010
13/20S#ide 1( $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
)ptimi*ations of K"#
7ard8are evolves :uic+ly
.ear&nati0e perormance in +uest mode
Decreasin+ costs o mode s/itc*es
Additiona# eatures a0oid sot/are so#utions, t*us exits
.ested pa+e tab#es
TL3 ta++in+A2IC 0irtua#ization
!!!
Fhat 8ill continue to consume cycles
Code pat* bet/een 56&exit and 56&entr 6ode s/itc*es, i!e! t*e need to exit at a##
8/13/2019 KVM Architecture LK2010
14/20S#ide 1- $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
8/13/2019 KVM Architecture LK2010
15/20S#ide 1= $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
)ptimi*ing
8/13/2019 KVM Architecture LK2010
16/20S#ide 1? $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
8/13/2019 KVM Architecture LK2010
17/20
S#ide 1 $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
(aravirtual /evices
Advantages
8/13/2019 KVM Architecture LK2010
18/20
S#ide 1 $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
An Almost&nKernel /evice
vhostnet
Goal high throughput
lo8 latency guest net8or+ing
A0oid *ea0 exits
8/13/2019 KVM Architecture LK2010
19/20
S#ide 1' $%1%&%'&$( ) Siemens AG, Corporate Tec*no#o+Jan Kiszka, CT T DE IT 1
Fhat;s net
Generic
8/13/2019 KVM Architecture LK2010
20/20
S#ide $% $%1%&%'&$( ) Siemens AG Corporate Tec*no#o+Jan Kiszka CT T DE IT 1
Than+s you for listeningH
?uestions
Top Related