SlideShare a Scribd company logo
1 of 58
Download to read offline
Simon Kuenzer <simon.kuenzer@neclab.eu>
Senior Researcher, NEC Laboratories Europe GmbH
Xen Summit 2019, Chicago
Weather Report
This work has received funding from the European Union’s Horizon 2020 research and
innovation program under grant agreements no. 675806 (“5G CITY”) and no. 825377
(“UNICORE”). This work reflects only the author’s views and the European
Commission is not responsible for any use that may be made of the information it
contains.
An SDK for highly specialized Unikernels
4 © NEC Corporation 2019
Unikernels as VMs
Unikernels
Kernel
Hardware
Kernel
App B
Libs B
Traditional VMs
Hypervisor
App A
Libs A
Hardware
Hypervisor
5 © NEC Corporation 2019
Unikernels as VMs
App A
Libs A
App B
Libs B
Unikernels
Kernel
Hardware
Kernel
App B
Libs B
Traditional VMs
Hypervisor
App A
Libs A
Hardware
Hypervisor
6 © NEC Corporation 2019
Unikernels as VMs
▌Unikernels are purpose-built
 Thin kernel layer, only what application needs
 Single monolithic binary that contains OS and application
App A
Libs A
App B
Libs B
Unikernels
Kernel
Hardware
Kernel
App B
Libs B
Traditional VMs
Hypervisor
App A
Libs A
Hardware
Hypervisor
7 © NEC Corporation 2019
Unikernels as VMs
▌Unikernels are purpose-built
 Thin kernel layer, only what application needs
 Single monolithic binary that contains OS and application
▌No isolation within Unikernel, done with hypervisor
 One application  Flat and single address space
App A
Libs A
App B
Libs B
Unikernels
Kernel
Hardware
Kernel
App B
Libs B
Traditional VMs
Hypervisor
App A
Libs A
Hardware
Hypervisor
8 © NEC Corporation 2019
Unikernels as VMs
▌Unikernels are purpose-built
 Thin kernel layer, only what application needs
 Single monolithic binary that contains OS and application
▌No isolation within Unikernel, done with hypervisor
 One application  Flat and single address space
▌Further advantages from specialization
 Performance and efficiency; reduced attack vector; small memory footprint
App A
Libs A
App B
Libs B
Unikernels
Kernel
Hardware
Kernel
App B
Libs B
Traditional VMs
Hypervisor
App A
Libs A
Hardware
Hypervisor
9 © NEC Corporation 2019
Unikernel Framework
Motivation
▌Support wide range of use cases
▌Simplify building and optimizing
▌Simplify porting of existing applications
▌Common and shared code base for Unikernel creators
▌Support different hypervisors and CPU architectures
10 © NEC Corporation 2019
Unikernel Framework
Motivation
▌Support wide range of use cases
▌Simplify building and optimizing
▌Simplify porting of existing applications
▌Common and shared code base for Unikernel creators
▌Support different hypervisors and CPU architectures
▌Concept: “Everything is a library”
Decomposed OS functionality
▌Two components:
1. Library Pool
2. Build Tool
11 © NEC Corporation 2019
architecture
libs
main
libs
platform
libs
libarm32arch.olibx86_64arch.o
libxenplat.o
drivers
libconsole.o
libixgbe.o
libvirtio.o
network stack
liblwip.o
libtcpip.o
libhttp.o
memory allocators
libbuddy.o
libheap.o
libmempool.o
filesystems
libvfs.o
libfat.o
libext3.o
runtimes
libocaml.o
libpython.o
liberlang.o
schedulers
libcoop.o
libpreempt.o
librt.o
and more…
standard libs
musl.o
libnewlibc.o
libopenssl.o
1) Library Pool
libkvmplat.o liblinuxuplat.o
libmipsarch.o
libxenplat.o
12 © NEC Corporation 2019
architecture
libs
main
libs
platform
libs
libarm32arch.olibx86_64arch.o
libxenplat.o
drivers
libconsole.o
libixgbe.o
libvirtio.o
network stack
liblwip.o
libtcpip.o
libhttp.o
memory allocators
libbuddy.o
libheap.o
libmempool.o
filesystems
libvfs.o
libfat.o
libext3.o
runtimes
libocaml.o
libpython.o
liberlang.o
schedulers
libcoop.o
libpreempt.o
librt.o
MyApplication
and more…
standard libs
musl.o
libnewlibc.o
libopenssl.o
1) Library Pool
libkvmplat.o liblinuxuplat.o
libmipsarch.o
libxenplat.o
Select/create
application
1 MyLib_A
13 © NEC Corporation 2019
architecture
libs
main
libs
platform
libs
libarm32arch.olibx86_64arch.o
libxenplat.o
drivers
libconsole.o
libixgbe.o
libvirtio.o
network stack
liblwip.o
libtcpip.o
libhttp.o
memory allocators
libbuddy.o
libheap.o
libmempool.o
filesystems
libvfs.o
libfat.o
libext3.o
runtimes
libocaml.o
libpython.o
liberlang.o
schedulers
libcoop.o
libpreempt.o
librt.o
MyApplication
and more…
standard libs
musl.o
libnewlibc.o
libopenssl.o
1) Library Pool
libkvmplat.o liblinuxuplat.o
libmipsarch.o
libxenplat.o
Select/create
application
1
Selectand
configurelibraries
2
MyLib_A
14 © NEC Corporation 2019
Unikernels
architecture
libs
main
libs
platform
libs
libarm32arch.olibx86_64arch.o
libxenplat.o
drivers
libconsole.o
libixgbe.o
libvirtio.o
network stack
liblwip.o
libtcpip.o
libhttp.o
memory allocators
libbuddy.o
libheap.o
libmempool.o
filesystems
libvfs.o
libfat.o
libext3.o
runtimes
libocaml.o
libpython.o
liberlang.o
schedulers
libcoop.o
libpreempt.o
librt.o
MyApplication
and more…
standard libs
musl.o
libnewlibc.o
libopenssl.o
1) Library Pool
libkvmplat.o liblinuxuplat.o
libmipsarch.o
libxenplat.o
Select/create
application
1
Selectand
configurelibraries
2
Build3Run4
myapp_xen_x86-64 myapp_kvm_x86-64 myapp_bare_arm64 etc.
MyLib_A
15 © NEC Corporation 2019
2) Build Tool
16 © NEC Corporation 2019
2) Build Tool
▌KConfig based and Makefile “Magic”
17 © NEC Corporation 2019
2) Build Tool
▌KConfig based and Makefile “Magic”
▌Type “make menuconfig”
Choose options in the menu that you want for your application
Choose your target platform(s), e.g., Xen, KVM, bare-metal, Linux
18 © NEC Corporation 2019
2) Build Tool
▌KConfig based and Makefile “Magic”
▌Type “make menuconfig”
Choose options in the menu that you want for your application
Choose your target platform(s), e.g., Xen, KVM, bare-metal, Linux
▌Save your config and type “make”
Community Status and Achievements
20 © NEC Corporation 2019
Timeline
▌Early 2017: NEC-Internal project launch; 0.1
Build system
Initial port from Mini-OS and Solo5/KVM
21 © NEC Corporation 2019
Timeline
▌Early 2017: NEC-Internal project launch; 0.1
Build system
Initial port from Mini-OS and Solo5/KVM
▌Dec/2017: Public Launch; RELEASE-0.2 Titan
As Xen Incubator project
Arm32 Xen, x86 Xen, x86 KVM, x86 Linux
Binary buddy allocator (heap)
Cooperative scheduling
22 © NEC Corporation 2019
Timeline
▌Early 2017: NEC-Internal project launch; 0.1
Build system
Initial port from Mini-OS and Solo5/KVM
▌Dec/2017: Public Launch; RELEASE-0.2 Titan
As Xen Incubator project
Arm32 Xen, x86 Xen, x86 KVM, x86 Linux
Binary buddy allocator (heap)
Cooperative scheduling
▌Feb/2019: RELEASE-0.3 Iapetus
Arm64 support for KVM
Networking (uknetdev, lwip, virtio-net)
Initial VFS with in-RAM filesystem
newlib
23 © NEC Corporation 2019
Timeline
▌Early 2017: NEC-Internal project launch; 0.1
Build system
Initial port from Mini-OS and Solo5/KVM
▌Dec/2017: Public Launch; RELEASE-0.2 Titan
As Xen Incubator project
Arm32 Xen, x86 Xen, x86 KVM, x86 Linux
Binary buddy allocator (heap)
Cooperative scheduling
▌Feb/2019: RELEASE-0.3 Iapetus
Arm64 support for KVM
Networking (uknetdev, lwip, virtio-net)
Initial VFS with in-RAM filesystem
newlib
▌Upcoming release: RELEASE-0.4 Rhea
Language support: C++, Python, etc.
Block & console devices
9pfs filesystem (Xen, KVM)
Libraries: intel-intrinsics, libunwind, libuuid, pthread-embedded,
compiler-rt, eigen, fp16, fxdiv, pthreadpool
24 © NEC Corporation 2019
Changed lines of code by affiliation
▌3 contributors
▌Project Launch
86020
14903
27720
11736
32149
86020
31369
60401
2017 2018 2019
NEC Politehnica University of Bucharest Arm Other
▌~15 contributors
▌*Many patches
still under review
▌~20 contributors
▌Start of student
projects
Used Tools
26 © NEC Corporation 2019
Documentation
▌http://unikraft.org
▌Generated by Sphinx
▌Part of base repository: /doc/
27 © NEC Corporation 2019
Patch Reviews
▌Patchwork: http://patchwork.unikraft.org
▌Coordination of reviewers
▌Review status and reviewer/maintainer in charge visible
28 © NEC Corporation 2019
Automated Testing (coming soon)
▌Today: Two-branch model: master & staging
Staging: Latest accepted patches
Master: Manual follow-up: Releases and tested code
29 © NEC Corporation 2019
Automated Testing (coming soon)
▌Today: Two-branch model: master & staging
Staging: Latest accepted patches
Master: Manual follow-up: Releases and tested code
▌Jenkins for automate testing
Common combinations of configurations and libraries
Execution test on common hypervisors and architectures
(Xen, KVM, Linux, x86, Arm)
30 © NEC Corporation 2019
Automated Testing (coming soon)
▌Today: Two-branch model: master & staging
Staging: Latest accepted patches
Master: Manual follow-up: Releases and tested code
▌Jenkins for automate testing
Common combinations of configurations and libraries
Execution test on common hypervisors and architectures
(Xen, KVM, Linux, x86, Arm)
▌Goal
Integrate test results into review processes
Ongoing and upcoming Projects
32 © NEC Corporation 2019
Binary Compatible Unikernels
▌Even with complete library pool,
manual porting is non-trivial
Existing build system need to be ported or
instrumented (e.g., cross-compilation)
Pre-compiled binaries cannot be executed
(e.g., proprietary executables)
33 © NEC Corporation 2019
Binary Compatible Unikernels
▌Even with complete library pool,
manual porting is non-trivial
Existing build system need to be ported or
instrumented (e.g., cross-compilation)
Pre-compiled binaries cannot be executed
(e.g., proprietary executables)
▌ELF binary compatibility, Linux ABI
Same executable for Linux should run on
Unikraft without recompilation
ELF loader
System call emulation
[1] Pierre et. al, A Binary-Compatible Unikernel, VEE’19
[2] Kiviti et. al, OSv—Optimizing the Operating System for Virtual Machines, USENIX ATC ’14
Image: https://en.wikipedia.org/wiki/Executable_and_Linkable_Format
34 © NEC Corporation 2019
Language Runtimes
35 © NEC Corporation 2019
Language Runtimes
▌Support applications written in higher-level
language as Unikernel
Primarily Serverless and IoT use cases
36 © NEC Corporation 2019
Language Runtimes
▌Support applications written in higher-level
language as Unikernel
Primarily Serverless and IoT use cases
▌Upcoming:
C++
Rust
Go
Ruby
Javascript (v8)
Python
37 © NEC Corporation 2019
Language Runtimes
▌Support applications written in higher-level
language as Unikernel
Primarily Serverless and IoT use cases
▌Upcoming:
C++
Rust
Go
Ruby
Javascript (v8)
Python
Unikernel Image sizes
(uncompressed, Xen)
Micropython 828 KB
Python 2 3,9 MB
Go runtime 552 KB
38 © NEC Corporation 2019
NFV
▌Virtualized Network Functions
Package vNF directly as VM with Unikraft
Remove maintenance effort of hosting OS
Minimal OS overhead
Minimal OS noise
High networking performance & throughput
39 © NEC Corporation 2019
NFV
▌Virtualized Network Functions
Package vNF directly as VM with Unikraft
Remove maintenance effort of hosting OS
Minimal OS overhead
Minimal OS noise
High networking performance & throughput
▌Click
Programmable vNF
40 © NEC Corporation 2019
NFV
▌Virtualized Network Functions
Package vNF directly as VM with Unikraft
Remove maintenance effort of hosting OS
Minimal OS overhead
Minimal OS noise
High networking performance & throughput
▌Click
Programmable vNF
▌Intel DPDK
Dataplane development Kit
SDK for building high-performance VNFs
Directly build Unikernel instead of kernel-bypassing application
41 © NEC Corporation 2019
Application Porting
▌Initial set of ported application
Typical for cloud deployments
Learn about missing components in Unikraft
42 © NEC Corporation 2019
Application Porting
▌Initial set of ported application
Typical for cloud deployments
Learn about missing components in Unikraft
▌Webservers
Nginx, lighttpd
43 © NEC Corporation 2019
Application Porting
▌Initial set of ported application
Typical for cloud deployments
Learn about missing components in Unikraft
▌Webservers
Nginx, lighttpd
▌Databases
Memcached, Redis, sqlite
44 © NEC Corporation 2019
Application Porting
▌Initial set of ported application
Typical for cloud deployments
Learn about missing components in Unikraft
▌Webservers
Nginx, lighttpd
▌Databases
Memcached, Redis, sqlite
▌Machine Learning
Pytorch
45 © NEC Corporation 2019
Application Porting
▌Initial set of ported application
Typical for cloud deployments
Learn about missing components in Unikraft
▌Webservers
Nginx, lighttpd
▌Databases
Memcached, Redis, sqlite
▌Machine Learning
Pytorch
▌Goal: Only minimal effort to integrate to build system
Makefile.uk
Config.uk
46 © NEC Corporation 2019
Application Porting
▌Initial set of ported application
Typical for cloud deployments
Learn about missing components in Unikraft
▌Webservers
Nginx, lighttpd
▌Databases
Memcached, Redis, sqlite
▌Machine Learning
Pytorch
▌Goal: Only minimal effort to integrate to build system
Makefile.uk
Config.uk
SQLite Unikernel
Image size (uncompressed, Xen) 844 KB
47 © NEC Corporation 2019
Xenstore
Xen Dom0-Disaggregation
▌Disaggregate functionality from Dom0
Xen
Linux
Dom0
xl
toolstack
48 © NEC Corporation 2019
Xenstore
Xen Dom0-Disaggregation
▌Disaggregate functionality from Dom0
XenStore stub domain (e.g., cxenstore)
Xen
Linux
Dom0
xl
toolstack
49 © NEC Corporation 2019
Xenstore
Xen Dom0-Disaggregation
▌Disaggregate functionality from Dom0
XenStore stub domain (e.g., cxenstore)
Xen
Linux
Qemu
HVM DomUDom0
xl
toolstack
50 © NEC Corporation 2019
Xenstore
Xen Dom0-Disaggregation
▌Disaggregate functionality from Dom0
XenStore stub domain (e.g., cxenstore)
QEMU stub domain
Xen
Linux
Qemu
HVM DomUDom0
xl
toolstack
51 © NEC Corporation 2019
Hardening
▌Already small attack vector due to specialization
52 © NEC Corporation 2019
Hardening
▌Already small attack vector due to specialization
▌Common attack prevention features need to be
implemented1, for instance:
ASLR (via boot loader or toolstack)
Stack canaries
Page protection bits
Heap integrity checks
[1] NCC Group, Assessing Unikernel Security,
https://www.nccgroup.trust/us/our-research/assessing-unikernel-security/
53 © NEC Corporation 2019
Hardening
▌Already small attack vector due to specialization
▌Common attack prevention features need to be
implemented1, for instance:
ASLR (via boot loader or toolstack)
Stack canaries
Page protection bits
Heap integrity checks
▌Potential to enable enhanced preventions with little
performance costs due to direct access to privileged
functionality
e.g., malloc() maps pages, free() unmaps pages
[1] NCC Group, Assessing Unikernel Security,
https://www.nccgroup.trust/us/our-research/assessing-unikernel-security/
More talks at XenSummit 2019
55 © NEC Corporation 2019
Talks
56 © NEC Corporation 2019
Talks
▌Check-out related talks:
Wednesday, 11:55am
Secure Unikraft Applications with Solo5
Haibo Xu, Arm
Wednesday, 1:50pm
When Unikraft Meets Arm64
Jia He, Arm
Wednesday, 3:45pm
A Journey to Mirage OS as Xen PVH
Marek Marczykowski-Górecki, Invisible Things Lab
57 © NEC Corporation 2019
Talks
▌Check-out related talks:
Wednesday, 11:55am
Secure Unikraft Applications with Solo5
Haibo Xu, Arm
Wednesday, 1:50pm
When Unikraft Meets Arm64
Jia He, Arm
Wednesday, 3:45pm
A Journey to Mirage OS as Xen PVH
Marek Marczykowski-Górecki, Invisible Things Lab
▌Design Sessions
Tuesday, 2:40pm
Building Stub Domains with Unikraft
Wednesday, 4:35pm
A Journey through Unikraft's Build System
XPDDS19 Keynote:  Unikraft Weather Report

More Related Content

What's hot

2018 Genivi Xen Overview Nov Update
2018 Genivi Xen Overview Nov Update2018 Genivi Xen Overview Nov Update
2018 Genivi Xen Overview Nov UpdateThe Linux Foundation
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...The Linux Foundation
 
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...The Linux Foundation
 
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixXPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixThe Linux Foundation
 
XPDDS19: Using Xen to Enable an Open Source Safety Certifiable Automotive Gra...
XPDDS19: Using Xen to Enable an Open Source Safety Certifiable Automotive Gra...XPDDS19: Using Xen to Enable an Open Source Safety Certifiable Automotive Gra...
XPDDS19: Using Xen to Enable an Open Source Safety Certifiable Automotive Gra...The Linux Foundation
 
XPDDS19: Unikraft Dom0 Disaggregation
XPDDS19: Unikraft Dom0 DisaggregationXPDDS19: Unikraft Dom0 Disaggregation
XPDDS19: Unikraft Dom0 DisaggregationThe Linux Foundation
 
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...The Linux Foundation
 
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...The Linux Foundation
 
Platform Security Summit 18: Xen Security Weather Report 2018
Platform Security Summit 18: Xen Security Weather Report 2018Platform Security Summit 18: Xen Security Weather Report 2018
Platform Security Summit 18: Xen Security Weather Report 2018The Linux Foundation
 
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...The Linux Foundation
 
Dom0less - Xen Developer Summit 2019
Dom0less  - Xen Developer Summit 2019Dom0less  - Xen Developer Summit 2019
Dom0less - Xen Developer Summit 2019Stefano Stabellini
 
XPDDS19: Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
XPDDS19:   Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...XPDDS19:   Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
XPDDS19: Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...The Linux Foundation
 
OSSEU17: How Open Source Project Xen Puts Security Software Vendors Ahead of ...
OSSEU17: How Open Source Project Xen Puts Security Software Vendors Ahead of ...OSSEU17: How Open Source Project Xen Puts Security Software Vendors Ahead of ...
OSSEU17: How Open Source Project Xen Puts Security Software Vendors Ahead of ...The Linux Foundation
 
XPDDS17: Hypervisor-Based Security: Bringing Virtualized Exceptions Into the ...
XPDDS17: Hypervisor-Based Security: Bringing Virtualized Exceptions Into the ...XPDDS17: Hypervisor-Based Security: Bringing Virtualized Exceptions Into the ...
XPDDS17: Hypervisor-Based Security: Bringing Virtualized Exceptions Into the ...The Linux Foundation
 
ELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleThe Linux Foundation
 
XPDDS18: Xen Project Weather Report 2018
XPDDS18: Xen Project Weather Report 2018XPDDS18: Xen Project Weather Report 2018
XPDDS18: Xen Project Weather Report 2018The Linux Foundation
 
XPDDS18: Unikraft: An easy way of crafting Unikernels on Arm - Kaly Xin, ARM
XPDDS18: Unikraft: An easy way of crafting Unikernels on Arm - Kaly Xin, ARMXPDDS18: Unikraft: An easy way of crafting Unikernels on Arm - Kaly Xin, ARM
XPDDS18: Unikraft: An easy way of crafting Unikernels on Arm - Kaly Xin, ARMThe Linux Foundation
 
OSSA17 - Mixed License FOSS Projects
OSSA17 - Mixed License FOSS ProjectsOSSA17 - Mixed License FOSS Projects
OSSA17 - Mixed License FOSS ProjectsThe Linux Foundation
 
XPDDS18: Introducing ViryaOS: Secure Containers for Embedded and IoT - Stefan...
XPDDS18: Introducing ViryaOS: Secure Containers for Embedded and IoT - Stefan...XPDDS18: Introducing ViryaOS: Secure Containers for Embedded and IoT - Stefan...
XPDDS18: Introducing ViryaOS: Secure Containers for Embedded and IoT - Stefan...The Linux Foundation
 

What's hot (20)

2018 Genivi Xen Overview Nov Update
2018 Genivi Xen Overview Nov Update2018 Genivi Xen Overview Nov Update
2018 Genivi Xen Overview Nov Update
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
 
OSSNA18: Xen Beginners Training
OSSNA18: Xen Beginners Training OSSNA18: Xen Beginners Training
OSSNA18: Xen Beginners Training
 
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
 
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixXPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
 
XPDDS19: Using Xen to Enable an Open Source Safety Certifiable Automotive Gra...
XPDDS19: Using Xen to Enable an Open Source Safety Certifiable Automotive Gra...XPDDS19: Using Xen to Enable an Open Source Safety Certifiable Automotive Gra...
XPDDS19: Using Xen to Enable an Open Source Safety Certifiable Automotive Gra...
 
XPDDS19: Unikraft Dom0 Disaggregation
XPDDS19: Unikraft Dom0 DisaggregationXPDDS19: Unikraft Dom0 Disaggregation
XPDDS19: Unikraft Dom0 Disaggregation
 
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
 
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
 
Platform Security Summit 18: Xen Security Weather Report 2018
Platform Security Summit 18: Xen Security Weather Report 2018Platform Security Summit 18: Xen Security Weather Report 2018
Platform Security Summit 18: Xen Security Weather Report 2018
 
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
 
Dom0less - Xen Developer Summit 2019
Dom0less  - Xen Developer Summit 2019Dom0less  - Xen Developer Summit 2019
Dom0less - Xen Developer Summit 2019
 
XPDDS19: Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
XPDDS19:   Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...XPDDS19:   Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
XPDDS19: Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
 
OSSEU17: How Open Source Project Xen Puts Security Software Vendors Ahead of ...
OSSEU17: How Open Source Project Xen Puts Security Software Vendors Ahead of ...OSSEU17: How Open Source Project Xen Puts Security Software Vendors Ahead of ...
OSSEU17: How Open Source Project Xen Puts Security Software Vendors Ahead of ...
 
XPDDS17: Hypervisor-Based Security: Bringing Virtualized Exceptions Into the ...
XPDDS17: Hypervisor-Based Security: Bringing Virtualized Exceptions Into the ...XPDDS17: Hypervisor-Based Security: Bringing Virtualized Exceptions Into the ...
XPDDS17: Hypervisor-Based Security: Bringing Virtualized Exceptions Into the ...
 
ELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made Simple
 
XPDDS18: Xen Project Weather Report 2018
XPDDS18: Xen Project Weather Report 2018XPDDS18: Xen Project Weather Report 2018
XPDDS18: Xen Project Weather Report 2018
 
XPDDS18: Unikraft: An easy way of crafting Unikernels on Arm - Kaly Xin, ARM
XPDDS18: Unikraft: An easy way of crafting Unikernels on Arm - Kaly Xin, ARMXPDDS18: Unikraft: An easy way of crafting Unikernels on Arm - Kaly Xin, ARM
XPDDS18: Unikraft: An easy way of crafting Unikernels on Arm - Kaly Xin, ARM
 
OSSA17 - Mixed License FOSS Projects
OSSA17 - Mixed License FOSS ProjectsOSSA17 - Mixed License FOSS Projects
OSSA17 - Mixed License FOSS Projects
 
XPDDS18: Introducing ViryaOS: Secure Containers for Embedded and IoT - Stefan...
XPDDS18: Introducing ViryaOS: Secure Containers for Embedded and IoT - Stefan...XPDDS18: Introducing ViryaOS: Secure Containers for Embedded and IoT - Stefan...
XPDDS18: Introducing ViryaOS: Secure Containers for Embedded and IoT - Stefan...
 

Similar to XPDDS19 Keynote: Unikraft Weather Report

The UNICORE Project: Unikraft and OpenNebula
The UNICORE Project:  Unikraft and OpenNebulaThe UNICORE Project:  Unikraft and OpenNebula
The UNICORE Project: Unikraft and OpenNebulaOpenNebula Project
 
CSUC - UNICORE Project: UNIKernel Power
CSUC - UNICORE Project: UNIKernel PowerCSUC - UNICORE Project: UNIKernel Power
CSUC - UNICORE Project: UNIKernel PowerUNICORE_project
 
“OpenVX 1.3: An Open Standard for Computer Vision Software Acceleration,” a P...
“OpenVX 1.3: An Open Standard for Computer Vision Software Acceleration,” a P...“OpenVX 1.3: An Open Standard for Computer Vision Software Acceleration,” a P...
“OpenVX 1.3: An Open Standard for Computer Vision Software Acceleration,” a P...Edge AI and Vision Alliance
 
"Current and Planned Standards for Computer Vision and Machine Learning," a P...
"Current and Planned Standards for Computer Vision and Machine Learning," a P..."Current and Planned Standards for Computer Vision and Machine Learning," a P...
"Current and Planned Standards for Computer Vision and Machine Learning," a P...Edge AI and Vision Alliance
 
XPDDS18: Unleashing the Power of Unikernels with Unikraft - Florian Schmidt, ...
XPDDS18: Unleashing the Power of Unikernels with Unikraft - Florian Schmidt, ...XPDDS18: Unleashing the Power of Unikernels with Unikraft - Florian Schmidt, ...
XPDDS18: Unleashing the Power of Unikernels with Unikraft - Florian Schmidt, ...The Linux Foundation
 
Academy PRO: .NET Core intro
Academy PRO: .NET Core introAcademy PRO: .NET Core intro
Academy PRO: .NET Core introBinary Studio
 
"Building Complete Embedded Vision Systems on Linux—From Camera to Display," ...
"Building Complete Embedded Vision Systems on Linux—From Camera to Display," ..."Building Complete Embedded Vision Systems on Linux—From Camera to Display," ...
"Building Complete Embedded Vision Systems on Linux—From Camera to Display," ...Edge AI and Vision Alliance
 
Unik: Unikernel Backend to Cloud Foundry
Unik: Unikernel Backend to Cloud FoundryUnik: Unikernel Backend to Cloud Foundry
Unik: Unikernel Backend to Cloud FoundryVMware Tanzu
 
Cigna Innovation Summit
Cigna Innovation SummitCigna Innovation Summit
Cigna Innovation SummitIdit Levine
 
Linux, Unikernel, LinuxKit: towards redefining the cloud stack.
Linux, Unikernel, LinuxKit: towards redefining the cloud stack.Linux, Unikernel, LinuxKit: towards redefining the cloud stack.
Linux, Unikernel, LinuxKit: towards redefining the cloud stack.Idit Levine
 
"Portable Performance via the OpenVX Computer Vision Library: Case Studies," ...
"Portable Performance via the OpenVX Computer Vision Library: Case Studies," ..."Portable Performance via the OpenVX Computer Vision Library: Case Studies," ...
"Portable Performance via the OpenVX Computer Vision Library: Case Studies," ...Edge AI and Vision Alliance
 
Modern IoT and Embedded Linux Deployment - Berlin
Modern IoT and Embedded Linux Deployment - BerlinModern IoT and Embedded Linux Deployment - Berlin
Modern IoT and Embedded Linux Deployment - BerlinDjalal Harouni
 
"APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre...
"APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre..."APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre...
"APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre...Edge AI and Vision Alliance
 
OSDC 2012 | OpenNebula Tutorial by Constantino Vazquez Blanco
OSDC 2012 | OpenNebula Tutorial by Constantino Vazquez BlancoOSDC 2012 | OpenNebula Tutorial by Constantino Vazquez Blanco
OSDC 2012 | OpenNebula Tutorial by Constantino Vazquez BlancoNETWAYS
 
Continuous Everything in a Multi-cloud and Multi-platform Environment
Continuous Everything in a Multi-cloud and Multi-platform EnvironmentContinuous Everything in a Multi-cloud and Multi-platform Environment
Continuous Everything in a Multi-cloud and Multi-platform EnvironmentVMware Tanzu
 
stackconf 2022: It’s Time to Debloat the Cloud with Unikraft
stackconf 2022: It’s Time to Debloat the Cloud with Unikraftstackconf 2022: It’s Time to Debloat the Cloud with Unikraft
stackconf 2022: It’s Time to Debloat the Cloud with UnikraftNETWAYS
 
Crash Course in Open Source Cloud Computing
Crash Course in Open Source Cloud ComputingCrash Course in Open Source Cloud Computing
Crash Course in Open Source Cloud ComputingMark Hinkle
 
LKNOG3 - Telco Cloud Common – VIM/ CIM
LKNOG3 - Telco Cloud Common – VIM/ CIMLKNOG3 - Telco Cloud Common – VIM/ CIM
LKNOG3 - Telco Cloud Common – VIM/ CIMLKNOG
 
Infrastructure design for Kubernetes
Infrastructure design for KubernetesInfrastructure design for Kubernetes
Infrastructure design for KubernetesGuillaume Morini
 

Similar to XPDDS19 Keynote: Unikraft Weather Report (20)

The UNICORE Project: Unikraft and OpenNebula
The UNICORE Project:  Unikraft and OpenNebulaThe UNICORE Project:  Unikraft and OpenNebula
The UNICORE Project: Unikraft and OpenNebula
 
CSUC - UNICORE Project: UNIKernel Power
CSUC - UNICORE Project: UNIKernel PowerCSUC - UNICORE Project: UNIKernel Power
CSUC - UNICORE Project: UNIKernel Power
 
UNICORE Project: Unikernel Power
UNICORE Project: Unikernel PowerUNICORE Project: Unikernel Power
UNICORE Project: Unikernel Power
 
“OpenVX 1.3: An Open Standard for Computer Vision Software Acceleration,” a P...
“OpenVX 1.3: An Open Standard for Computer Vision Software Acceleration,” a P...“OpenVX 1.3: An Open Standard for Computer Vision Software Acceleration,” a P...
“OpenVX 1.3: An Open Standard for Computer Vision Software Acceleration,” a P...
 
"Current and Planned Standards for Computer Vision and Machine Learning," a P...
"Current and Planned Standards for Computer Vision and Machine Learning," a P..."Current and Planned Standards for Computer Vision and Machine Learning," a P...
"Current and Planned Standards for Computer Vision and Machine Learning," a P...
 
XPDDS18: Unleashing the Power of Unikernels with Unikraft - Florian Schmidt, ...
XPDDS18: Unleashing the Power of Unikernels with Unikraft - Florian Schmidt, ...XPDDS18: Unleashing the Power of Unikernels with Unikraft - Florian Schmidt, ...
XPDDS18: Unleashing the Power of Unikernels with Unikraft - Florian Schmidt, ...
 
Academy PRO: .NET Core intro
Academy PRO: .NET Core introAcademy PRO: .NET Core intro
Academy PRO: .NET Core intro
 
"Building Complete Embedded Vision Systems on Linux—From Camera to Display," ...
"Building Complete Embedded Vision Systems on Linux—From Camera to Display," ..."Building Complete Embedded Vision Systems on Linux—From Camera to Display," ...
"Building Complete Embedded Vision Systems on Linux—From Camera to Display," ...
 
Unik: Unikernel Backend to Cloud Foundry
Unik: Unikernel Backend to Cloud FoundryUnik: Unikernel Backend to Cloud Foundry
Unik: Unikernel Backend to Cloud Foundry
 
Cigna Innovation Summit
Cigna Innovation SummitCigna Innovation Summit
Cigna Innovation Summit
 
Linux, Unikernel, LinuxKit: towards redefining the cloud stack.
Linux, Unikernel, LinuxKit: towards redefining the cloud stack.Linux, Unikernel, LinuxKit: towards redefining the cloud stack.
Linux, Unikernel, LinuxKit: towards redefining the cloud stack.
 
"Portable Performance via the OpenVX Computer Vision Library: Case Studies," ...
"Portable Performance via the OpenVX Computer Vision Library: Case Studies," ..."Portable Performance via the OpenVX Computer Vision Library: Case Studies," ...
"Portable Performance via the OpenVX Computer Vision Library: Case Studies," ...
 
Modern IoT and Embedded Linux Deployment - Berlin
Modern IoT and Embedded Linux Deployment - BerlinModern IoT and Embedded Linux Deployment - Berlin
Modern IoT and Embedded Linux Deployment - Berlin
 
"APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre...
"APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre..."APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre...
"APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre...
 
OSDC 2012 | OpenNebula Tutorial by Constantino Vazquez Blanco
OSDC 2012 | OpenNebula Tutorial by Constantino Vazquez BlancoOSDC 2012 | OpenNebula Tutorial by Constantino Vazquez Blanco
OSDC 2012 | OpenNebula Tutorial by Constantino Vazquez Blanco
 
Continuous Everything in a Multi-cloud and Multi-platform Environment
Continuous Everything in a Multi-cloud and Multi-platform EnvironmentContinuous Everything in a Multi-cloud and Multi-platform Environment
Continuous Everything in a Multi-cloud and Multi-platform Environment
 
stackconf 2022: It’s Time to Debloat the Cloud with Unikraft
stackconf 2022: It’s Time to Debloat the Cloud with Unikraftstackconf 2022: It’s Time to Debloat the Cloud with Unikraft
stackconf 2022: It’s Time to Debloat the Cloud with Unikraft
 
Crash Course in Open Source Cloud Computing
Crash Course in Open Source Cloud ComputingCrash Course in Open Source Cloud Computing
Crash Course in Open Source Cloud Computing
 
LKNOG3 - Telco Cloud Common – VIM/ CIM
LKNOG3 - Telco Cloud Common – VIM/ CIMLKNOG3 - Telco Cloud Common – VIM/ CIM
LKNOG3 - Telco Cloud Common – VIM/ CIM
 
Infrastructure design for Kubernetes
Infrastructure design for KubernetesInfrastructure design for Kubernetes
Infrastructure design for Kubernetes
 

More from The Linux Foundation

XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...The Linux Foundation
 
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxXPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxThe Linux Foundation
 
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...The Linux Foundation
 
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderXPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderThe Linux Foundation
 
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdXPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdThe Linux Foundation
 
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...The Linux Foundation
 
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DXPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DThe Linux Foundation
 
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsXPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsThe Linux Foundation
 
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...The Linux Foundation
 
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEXPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEThe Linux Foundation
 
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information SecurityXPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information SecurityThe Linux Foundation
 
XPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSE
XPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSEXPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSE
XPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSEThe Linux Foundation
 
XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...
XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...
XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...The Linux Foundation
 
XPDSS19: Live-Updating Xen - Amit Shah & David Woodhouse, Amazon
XPDSS19: Live-Updating Xen - Amit Shah & David Woodhouse, AmazonXPDSS19: Live-Updating Xen - Amit Shah & David Woodhouse, Amazon
XPDSS19: Live-Updating Xen - Amit Shah & David Woodhouse, AmazonThe Linux Foundation
 
XPDDS19: Secure Unikraft Applications with Solo5 - Haibo Xu, ARM
XPDDS19: Secure Unikraft Applications with Solo5 - Haibo Xu, ARMXPDDS19: Secure Unikraft Applications with Solo5 - Haibo Xu, ARM
XPDDS19: Secure Unikraft Applications with Solo5 - Haibo Xu, ARMThe Linux Foundation
 
XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...
XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...
XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...The Linux Foundation
 
XPDSS19: Improve the Reliability and Efficiency of Late Microcode Update - Ch...
XPDSS19: Improve the Reliability and Efficiency of Late Microcode Update - Ch...XPDSS19: Improve the Reliability and Efficiency of Late Microcode Update - Ch...
XPDSS19: Improve the Reliability and Efficiency of Late Microcode Update - Ch...The Linux Foundation
 
XPDDS19: When Unikraft Meets Arm64 - Jia He, Arm
XPDDS19: When Unikraft Meets Arm64 - Jia He, ArmXPDDS19: When Unikraft Meets Arm64 - Jia He, Arm
XPDDS19: When Unikraft Meets Arm64 - Jia He, ArmThe Linux Foundation
 
XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...
XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...
XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...The Linux Foundation
 

More from The Linux Foundation (19)

XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
 
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxXPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
 
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
 
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderXPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
 
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdXPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
 
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
 
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DXPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
 
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsXPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
 
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
 
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEXPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
 
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information SecurityXPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
 
XPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSE
XPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSEXPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSE
XPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSE
 
XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...
XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...
XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...
 
XPDSS19: Live-Updating Xen - Amit Shah & David Woodhouse, Amazon
XPDSS19: Live-Updating Xen - Amit Shah & David Woodhouse, AmazonXPDSS19: Live-Updating Xen - Amit Shah & David Woodhouse, Amazon
XPDSS19: Live-Updating Xen - Amit Shah & David Woodhouse, Amazon
 
XPDDS19: Secure Unikraft Applications with Solo5 - Haibo Xu, ARM
XPDDS19: Secure Unikraft Applications with Solo5 - Haibo Xu, ARMXPDDS19: Secure Unikraft Applications with Solo5 - Haibo Xu, ARM
XPDDS19: Secure Unikraft Applications with Solo5 - Haibo Xu, ARM
 
XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...
XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...
XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...
 
XPDSS19: Improve the Reliability and Efficiency of Late Microcode Update - Ch...
XPDSS19: Improve the Reliability and Efficiency of Late Microcode Update - Ch...XPDSS19: Improve the Reliability and Efficiency of Late Microcode Update - Ch...
XPDSS19: Improve the Reliability and Efficiency of Late Microcode Update - Ch...
 
XPDDS19: When Unikraft Meets Arm64 - Jia He, Arm
XPDDS19: When Unikraft Meets Arm64 - Jia He, ArmXPDDS19: When Unikraft Meets Arm64 - Jia He, Arm
XPDDS19: When Unikraft Meets Arm64 - Jia He, Arm
 
XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...
XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...
XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...
 

Recently uploaded

The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfayushiqss
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationShrmpro
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durbanmasabamasaba
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyviewmasabamasaba
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburgmasabamasaba
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsBert Jan Schrijver
 

Recently uploaded (20)

The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisions
 

XPDDS19 Keynote: Unikraft Weather Report

  • 1. Simon Kuenzer <simon.kuenzer@neclab.eu> Senior Researcher, NEC Laboratories Europe GmbH Xen Summit 2019, Chicago Weather Report This work has received funding from the European Union’s Horizon 2020 research and innovation program under grant agreements no. 675806 (“5G CITY”) and no. 825377 (“UNICORE”). This work reflects only the author’s views and the European Commission is not responsible for any use that may be made of the information it contains.
  • 2.
  • 3. An SDK for highly specialized Unikernels
  • 4. 4 © NEC Corporation 2019 Unikernels as VMs Unikernels Kernel Hardware Kernel App B Libs B Traditional VMs Hypervisor App A Libs A Hardware Hypervisor
  • 5. 5 © NEC Corporation 2019 Unikernels as VMs App A Libs A App B Libs B Unikernels Kernel Hardware Kernel App B Libs B Traditional VMs Hypervisor App A Libs A Hardware Hypervisor
  • 6. 6 © NEC Corporation 2019 Unikernels as VMs ▌Unikernels are purpose-built  Thin kernel layer, only what application needs  Single monolithic binary that contains OS and application App A Libs A App B Libs B Unikernels Kernel Hardware Kernel App B Libs B Traditional VMs Hypervisor App A Libs A Hardware Hypervisor
  • 7. 7 © NEC Corporation 2019 Unikernels as VMs ▌Unikernels are purpose-built  Thin kernel layer, only what application needs  Single monolithic binary that contains OS and application ▌No isolation within Unikernel, done with hypervisor  One application  Flat and single address space App A Libs A App B Libs B Unikernels Kernel Hardware Kernel App B Libs B Traditional VMs Hypervisor App A Libs A Hardware Hypervisor
  • 8. 8 © NEC Corporation 2019 Unikernels as VMs ▌Unikernels are purpose-built  Thin kernel layer, only what application needs  Single monolithic binary that contains OS and application ▌No isolation within Unikernel, done with hypervisor  One application  Flat and single address space ▌Further advantages from specialization  Performance and efficiency; reduced attack vector; small memory footprint App A Libs A App B Libs B Unikernels Kernel Hardware Kernel App B Libs B Traditional VMs Hypervisor App A Libs A Hardware Hypervisor
  • 9. 9 © NEC Corporation 2019 Unikernel Framework Motivation ▌Support wide range of use cases ▌Simplify building and optimizing ▌Simplify porting of existing applications ▌Common and shared code base for Unikernel creators ▌Support different hypervisors and CPU architectures
  • 10. 10 © NEC Corporation 2019 Unikernel Framework Motivation ▌Support wide range of use cases ▌Simplify building and optimizing ▌Simplify porting of existing applications ▌Common and shared code base for Unikernel creators ▌Support different hypervisors and CPU architectures ▌Concept: “Everything is a library” Decomposed OS functionality ▌Two components: 1. Library Pool 2. Build Tool
  • 11. 11 © NEC Corporation 2019 architecture libs main libs platform libs libarm32arch.olibx86_64arch.o libxenplat.o drivers libconsole.o libixgbe.o libvirtio.o network stack liblwip.o libtcpip.o libhttp.o memory allocators libbuddy.o libheap.o libmempool.o filesystems libvfs.o libfat.o libext3.o runtimes libocaml.o libpython.o liberlang.o schedulers libcoop.o libpreempt.o librt.o and more… standard libs musl.o libnewlibc.o libopenssl.o 1) Library Pool libkvmplat.o liblinuxuplat.o libmipsarch.o libxenplat.o
  • 12. 12 © NEC Corporation 2019 architecture libs main libs platform libs libarm32arch.olibx86_64arch.o libxenplat.o drivers libconsole.o libixgbe.o libvirtio.o network stack liblwip.o libtcpip.o libhttp.o memory allocators libbuddy.o libheap.o libmempool.o filesystems libvfs.o libfat.o libext3.o runtimes libocaml.o libpython.o liberlang.o schedulers libcoop.o libpreempt.o librt.o MyApplication and more… standard libs musl.o libnewlibc.o libopenssl.o 1) Library Pool libkvmplat.o liblinuxuplat.o libmipsarch.o libxenplat.o Select/create application 1 MyLib_A
  • 13. 13 © NEC Corporation 2019 architecture libs main libs platform libs libarm32arch.olibx86_64arch.o libxenplat.o drivers libconsole.o libixgbe.o libvirtio.o network stack liblwip.o libtcpip.o libhttp.o memory allocators libbuddy.o libheap.o libmempool.o filesystems libvfs.o libfat.o libext3.o runtimes libocaml.o libpython.o liberlang.o schedulers libcoop.o libpreempt.o librt.o MyApplication and more… standard libs musl.o libnewlibc.o libopenssl.o 1) Library Pool libkvmplat.o liblinuxuplat.o libmipsarch.o libxenplat.o Select/create application 1 Selectand configurelibraries 2 MyLib_A
  • 14. 14 © NEC Corporation 2019 Unikernels architecture libs main libs platform libs libarm32arch.olibx86_64arch.o libxenplat.o drivers libconsole.o libixgbe.o libvirtio.o network stack liblwip.o libtcpip.o libhttp.o memory allocators libbuddy.o libheap.o libmempool.o filesystems libvfs.o libfat.o libext3.o runtimes libocaml.o libpython.o liberlang.o schedulers libcoop.o libpreempt.o librt.o MyApplication and more… standard libs musl.o libnewlibc.o libopenssl.o 1) Library Pool libkvmplat.o liblinuxuplat.o libmipsarch.o libxenplat.o Select/create application 1 Selectand configurelibraries 2 Build3Run4 myapp_xen_x86-64 myapp_kvm_x86-64 myapp_bare_arm64 etc. MyLib_A
  • 15. 15 © NEC Corporation 2019 2) Build Tool
  • 16. 16 © NEC Corporation 2019 2) Build Tool ▌KConfig based and Makefile “Magic”
  • 17. 17 © NEC Corporation 2019 2) Build Tool ▌KConfig based and Makefile “Magic” ▌Type “make menuconfig” Choose options in the menu that you want for your application Choose your target platform(s), e.g., Xen, KVM, bare-metal, Linux
  • 18. 18 © NEC Corporation 2019 2) Build Tool ▌KConfig based and Makefile “Magic” ▌Type “make menuconfig” Choose options in the menu that you want for your application Choose your target platform(s), e.g., Xen, KVM, bare-metal, Linux ▌Save your config and type “make”
  • 19. Community Status and Achievements
  • 20. 20 © NEC Corporation 2019 Timeline ▌Early 2017: NEC-Internal project launch; 0.1 Build system Initial port from Mini-OS and Solo5/KVM
  • 21. 21 © NEC Corporation 2019 Timeline ▌Early 2017: NEC-Internal project launch; 0.1 Build system Initial port from Mini-OS and Solo5/KVM ▌Dec/2017: Public Launch; RELEASE-0.2 Titan As Xen Incubator project Arm32 Xen, x86 Xen, x86 KVM, x86 Linux Binary buddy allocator (heap) Cooperative scheduling
  • 22. 22 © NEC Corporation 2019 Timeline ▌Early 2017: NEC-Internal project launch; 0.1 Build system Initial port from Mini-OS and Solo5/KVM ▌Dec/2017: Public Launch; RELEASE-0.2 Titan As Xen Incubator project Arm32 Xen, x86 Xen, x86 KVM, x86 Linux Binary buddy allocator (heap) Cooperative scheduling ▌Feb/2019: RELEASE-0.3 Iapetus Arm64 support for KVM Networking (uknetdev, lwip, virtio-net) Initial VFS with in-RAM filesystem newlib
  • 23. 23 © NEC Corporation 2019 Timeline ▌Early 2017: NEC-Internal project launch; 0.1 Build system Initial port from Mini-OS and Solo5/KVM ▌Dec/2017: Public Launch; RELEASE-0.2 Titan As Xen Incubator project Arm32 Xen, x86 Xen, x86 KVM, x86 Linux Binary buddy allocator (heap) Cooperative scheduling ▌Feb/2019: RELEASE-0.3 Iapetus Arm64 support for KVM Networking (uknetdev, lwip, virtio-net) Initial VFS with in-RAM filesystem newlib ▌Upcoming release: RELEASE-0.4 Rhea Language support: C++, Python, etc. Block & console devices 9pfs filesystem (Xen, KVM) Libraries: intel-intrinsics, libunwind, libuuid, pthread-embedded, compiler-rt, eigen, fp16, fxdiv, pthreadpool
  • 24. 24 © NEC Corporation 2019 Changed lines of code by affiliation ▌3 contributors ▌Project Launch 86020 14903 27720 11736 32149 86020 31369 60401 2017 2018 2019 NEC Politehnica University of Bucharest Arm Other ▌~15 contributors ▌*Many patches still under review ▌~20 contributors ▌Start of student projects
  • 26. 26 © NEC Corporation 2019 Documentation ▌http://unikraft.org ▌Generated by Sphinx ▌Part of base repository: /doc/
  • 27. 27 © NEC Corporation 2019 Patch Reviews ▌Patchwork: http://patchwork.unikraft.org ▌Coordination of reviewers ▌Review status and reviewer/maintainer in charge visible
  • 28. 28 © NEC Corporation 2019 Automated Testing (coming soon) ▌Today: Two-branch model: master & staging Staging: Latest accepted patches Master: Manual follow-up: Releases and tested code
  • 29. 29 © NEC Corporation 2019 Automated Testing (coming soon) ▌Today: Two-branch model: master & staging Staging: Latest accepted patches Master: Manual follow-up: Releases and tested code ▌Jenkins for automate testing Common combinations of configurations and libraries Execution test on common hypervisors and architectures (Xen, KVM, Linux, x86, Arm)
  • 30. 30 © NEC Corporation 2019 Automated Testing (coming soon) ▌Today: Two-branch model: master & staging Staging: Latest accepted patches Master: Manual follow-up: Releases and tested code ▌Jenkins for automate testing Common combinations of configurations and libraries Execution test on common hypervisors and architectures (Xen, KVM, Linux, x86, Arm) ▌Goal Integrate test results into review processes
  • 32. 32 © NEC Corporation 2019 Binary Compatible Unikernels ▌Even with complete library pool, manual porting is non-trivial Existing build system need to be ported or instrumented (e.g., cross-compilation) Pre-compiled binaries cannot be executed (e.g., proprietary executables)
  • 33. 33 © NEC Corporation 2019 Binary Compatible Unikernels ▌Even with complete library pool, manual porting is non-trivial Existing build system need to be ported or instrumented (e.g., cross-compilation) Pre-compiled binaries cannot be executed (e.g., proprietary executables) ▌ELF binary compatibility, Linux ABI Same executable for Linux should run on Unikraft without recompilation ELF loader System call emulation [1] Pierre et. al, A Binary-Compatible Unikernel, VEE’19 [2] Kiviti et. al, OSv—Optimizing the Operating System for Virtual Machines, USENIX ATC ’14 Image: https://en.wikipedia.org/wiki/Executable_and_Linkable_Format
  • 34. 34 © NEC Corporation 2019 Language Runtimes
  • 35. 35 © NEC Corporation 2019 Language Runtimes ▌Support applications written in higher-level language as Unikernel Primarily Serverless and IoT use cases
  • 36. 36 © NEC Corporation 2019 Language Runtimes ▌Support applications written in higher-level language as Unikernel Primarily Serverless and IoT use cases ▌Upcoming: C++ Rust Go Ruby Javascript (v8) Python
  • 37. 37 © NEC Corporation 2019 Language Runtimes ▌Support applications written in higher-level language as Unikernel Primarily Serverless and IoT use cases ▌Upcoming: C++ Rust Go Ruby Javascript (v8) Python Unikernel Image sizes (uncompressed, Xen) Micropython 828 KB Python 2 3,9 MB Go runtime 552 KB
  • 38. 38 © NEC Corporation 2019 NFV ▌Virtualized Network Functions Package vNF directly as VM with Unikraft Remove maintenance effort of hosting OS Minimal OS overhead Minimal OS noise High networking performance & throughput
  • 39. 39 © NEC Corporation 2019 NFV ▌Virtualized Network Functions Package vNF directly as VM with Unikraft Remove maintenance effort of hosting OS Minimal OS overhead Minimal OS noise High networking performance & throughput ▌Click Programmable vNF
  • 40. 40 © NEC Corporation 2019 NFV ▌Virtualized Network Functions Package vNF directly as VM with Unikraft Remove maintenance effort of hosting OS Minimal OS overhead Minimal OS noise High networking performance & throughput ▌Click Programmable vNF ▌Intel DPDK Dataplane development Kit SDK for building high-performance VNFs Directly build Unikernel instead of kernel-bypassing application
  • 41. 41 © NEC Corporation 2019 Application Porting ▌Initial set of ported application Typical for cloud deployments Learn about missing components in Unikraft
  • 42. 42 © NEC Corporation 2019 Application Porting ▌Initial set of ported application Typical for cloud deployments Learn about missing components in Unikraft ▌Webservers Nginx, lighttpd
  • 43. 43 © NEC Corporation 2019 Application Porting ▌Initial set of ported application Typical for cloud deployments Learn about missing components in Unikraft ▌Webservers Nginx, lighttpd ▌Databases Memcached, Redis, sqlite
  • 44. 44 © NEC Corporation 2019 Application Porting ▌Initial set of ported application Typical for cloud deployments Learn about missing components in Unikraft ▌Webservers Nginx, lighttpd ▌Databases Memcached, Redis, sqlite ▌Machine Learning Pytorch
  • 45. 45 © NEC Corporation 2019 Application Porting ▌Initial set of ported application Typical for cloud deployments Learn about missing components in Unikraft ▌Webservers Nginx, lighttpd ▌Databases Memcached, Redis, sqlite ▌Machine Learning Pytorch ▌Goal: Only minimal effort to integrate to build system Makefile.uk Config.uk
  • 46. 46 © NEC Corporation 2019 Application Porting ▌Initial set of ported application Typical for cloud deployments Learn about missing components in Unikraft ▌Webservers Nginx, lighttpd ▌Databases Memcached, Redis, sqlite ▌Machine Learning Pytorch ▌Goal: Only minimal effort to integrate to build system Makefile.uk Config.uk SQLite Unikernel Image size (uncompressed, Xen) 844 KB
  • 47. 47 © NEC Corporation 2019 Xenstore Xen Dom0-Disaggregation ▌Disaggregate functionality from Dom0 Xen Linux Dom0 xl toolstack
  • 48. 48 © NEC Corporation 2019 Xenstore Xen Dom0-Disaggregation ▌Disaggregate functionality from Dom0 XenStore stub domain (e.g., cxenstore) Xen Linux Dom0 xl toolstack
  • 49. 49 © NEC Corporation 2019 Xenstore Xen Dom0-Disaggregation ▌Disaggregate functionality from Dom0 XenStore stub domain (e.g., cxenstore) Xen Linux Qemu HVM DomUDom0 xl toolstack
  • 50. 50 © NEC Corporation 2019 Xenstore Xen Dom0-Disaggregation ▌Disaggregate functionality from Dom0 XenStore stub domain (e.g., cxenstore) QEMU stub domain Xen Linux Qemu HVM DomUDom0 xl toolstack
  • 51. 51 © NEC Corporation 2019 Hardening ▌Already small attack vector due to specialization
  • 52. 52 © NEC Corporation 2019 Hardening ▌Already small attack vector due to specialization ▌Common attack prevention features need to be implemented1, for instance: ASLR (via boot loader or toolstack) Stack canaries Page protection bits Heap integrity checks [1] NCC Group, Assessing Unikernel Security, https://www.nccgroup.trust/us/our-research/assessing-unikernel-security/
  • 53. 53 © NEC Corporation 2019 Hardening ▌Already small attack vector due to specialization ▌Common attack prevention features need to be implemented1, for instance: ASLR (via boot loader or toolstack) Stack canaries Page protection bits Heap integrity checks ▌Potential to enable enhanced preventions with little performance costs due to direct access to privileged functionality e.g., malloc() maps pages, free() unmaps pages [1] NCC Group, Assessing Unikernel Security, https://www.nccgroup.trust/us/our-research/assessing-unikernel-security/
  • 54. More talks at XenSummit 2019
  • 55. 55 © NEC Corporation 2019 Talks
  • 56. 56 © NEC Corporation 2019 Talks ▌Check-out related talks: Wednesday, 11:55am Secure Unikraft Applications with Solo5 Haibo Xu, Arm Wednesday, 1:50pm When Unikraft Meets Arm64 Jia He, Arm Wednesday, 3:45pm A Journey to Mirage OS as Xen PVH Marek Marczykowski-Górecki, Invisible Things Lab
  • 57. 57 © NEC Corporation 2019 Talks ▌Check-out related talks: Wednesday, 11:55am Secure Unikraft Applications with Solo5 Haibo Xu, Arm Wednesday, 1:50pm When Unikraft Meets Arm64 Jia He, Arm Wednesday, 3:45pm A Journey to Mirage OS as Xen PVH Marek Marczykowski-Górecki, Invisible Things Lab ▌Design Sessions Tuesday, 2:40pm Building Stub Domains with Unikraft Wednesday, 4:35pm A Journey through Unikraft's Build System