SlideShare a Scribd company logo
8
Most read
17
Most read
18
Most read
© Copyright 2019 Xilinx
Stefano Stabellini – Xen Developer Summit July 2019
Xen Dom0-less
© Copyright 2019 Xilinx
Traditional Xen System Configuration and Boot
>> 2
U-Boot
Xen
Dom0
DomU 1 DomU 2
CPU0 CPU1 CPU2
boots
xl
© Copyright 2019 Xilinx
Traditional Xen System Configuration and Boot
>> 3
U-Boot
Xen
Dom0
DomU 1 DomU 2
CPU0 CPU1 CPU2
boots
xl
quit
© Copyright 2019 Xilinx
The problem
˃ Boot Time
total > xen + dom0_kernel + dom0_user
˃ Safety Certifications
Dom0 doesn’t have to be Linux but it typically is
non-Linux Dom0
exit Dom0 after boot
˃ Complexity
build-time complexity
‒ Yocto rootfs build
runtime flexibility
‒ Monitoring
‒ VMs restart
© Copyright 2019 Xilinx
Dom0-less
© Copyright 2019 Xilinx
Dom0-less System Configuration and Boot
>> 6
U-Boot
Xen
Dom0 DomU 1 DomU 2
CPU CPU CPU
loads into memoryloads into memory
© Copyright 2019 Xilinx
Dom0-less System Configuration and Boot
>> 7
U-Boot
Xen
Dom0 DomU 1 DomU 2
CPU CPU CPU
boots
boots
© Copyright 2019 Xilinx
Dom0-less System Configuration and Boot
>> 8
U-Boot
Xen
Dom0 DomU 1 DomU 2
CPU CPU CPU
Dom0DomU 3
CPU
xl
Frontend Backend
Dom0-less VMs
© Copyright 2019 Xilinx
U-Boot + Device Tree protocol
˃ Load all the required binaries via U-Boot commands
tftpb 0x4000000dom0less/mpsoc.dtb
tftpb 0x80000 dom0less/Image-dom0
tftpb 0x5000000dom0less/uXen
tftpb 0xd000000 dom0less/dom0-ramdisk.cpio.uboot
tftpb 0xa000000 dom0less/Image-domU
tftpb 0xb000000 dom0less/domU-ramdisk.cpio
bootm 0x5000000 0xd000000 0x4000000
© Copyright 2019 Xilinx
U-Boot + Device Tree protocol
˃ Advertise and configure Dom0-less VMs via Device Tree
domU1 {
compatible = "xen,domain";
memory = <0x20000>;
cpus = 1;
vpl011;
module@a000000 {
compatible = "multiboot,kernel", "multiboot,module";
reg = <0xa000000 0xffffff>;
bootargs = "console=ttyAMA0";
};
module@b0000000 {
compatible = "multiboot,ramdisk", "multiboot,module";
reg = <0xb000000 0xffffff>;
};
};
© Copyright 2019 Xilinx
Dom0-less Device Assignment
>> 11
U-Boot
Xen
Dom0 DomU 1 DomU 2
CPU CPU CPU
boots
boots
Network
Card
Other
Devices
© Copyright 2019 Xilinx
Dom0-less Device Assignment
˃ Configured via a nested device tree snippet
domU1 {
[…]
module@a000000 {
compatible = "multiboot,kernel", "multiboot,module";
reg = <0xa000000 0xffffff>;
bootargs = "console=ttyAMA0";
};
module@b0000000 {
compatible = "multiboot,ramdisk", "multiboot,module";
reg = <0xb000000 0xffffff>;
};
module@c000000 {
compatible = "multiboot,device-tree", "multiboot,module";
reg = <0xc0000000xffffff>;
};
};
© Copyright 2019 Xilinx
Dom0-less Device Assignment
˃ Configured via a nested device tree snippet
the device tree node of the device to assign
same as for regular DomUs
Special properties:
‒ interrupts: interrupts to remap
‒ interrupt-parent: special reference to GIC parent
(65000)
‒ xen,path: path to the device node in the main DT
‒ xen,reg: memory to remap
/dts-v1/;
/ {
#address-cells = <0x2>;
#size-cells = <0x1>;
passthrough {
compatible = "simple-bus";
ranges;
#address-cells = <0x2>;
#size-cells = <0x1>;
ethernet@ff0e0000 {
compatible = "cdns,zynqmp-gem";
status = "okay";
interrupt-parent = <0xfde8>;
interrupts = <0x0 0x3f 0x4 0x0 0x3f 0x4>;
xen,path = "/amba/ethernet@ff0e0000";
xen,reg= <0x0 0xff0e0000 0x1000 0x0 0xff0e0000>;
reg = <0x0 0xff0e0000 0x1000>;
clock-names = "pclk", "hclk", "tx_clk", "rx_clk";
#address-cells = <0x1>;
#size-cells = <0x0>;
[…]
© Copyright 2019 Xilinx
True Dom0-less
>> 14
U-Boot
Xen
DomU 1 DomU 2
CPU CPU
boots
boots
Network
Card
PL Block
boots
© Copyright 2019 Xilinx
Dom0-less and safety critical applications
>> 15
U-Boot
Xen
Dom0
DomU 1
Safety Critical
DomU 2
Safety Critical
CPU CPU CPU
boots
boots
DomU 3
Non-Critical
CPU
xl
Network
Card
© Copyright 2019 Xilinx
Dom0-less and PV drivers
>> 16
U-Boot
Xen
DomU 1 DomU 2
CPU CPU
boots
boots
Network
Card
Netfront
boots
Netback
Doesn’t
work
today!
© Copyright 2019 Xilinx
Dom0-less Pros & Cons
Pros:
˃ Much faster startup times
total ~= xen + domU
˃ Enable true Dom0-less configurations
Excellent for small systems
Easier to certify
˃ Lower Complexity
No need for the Xen tools
Does not require Yocto, just cross-build Xen
No need for Xen support in Dom0-less VMs, no need for CONFIG_XEN
Cons:
˃ No monitoring and restarting DomUs without Dom0
˃ No PV frontends/backends without Dom0
© Copyright 2019 Xilinx
Status & TODO
˃ DONE
basic Dom0-less booting upstream in Xen 4.12
device assignment implemented and sent to the list (not upstream)
˃ TODO
True Dom0-less
Shared memory and interrupts for VM-to-VM communications
PV frontends/backends drivers for Dom0-less VMs
© Copyright 2019 Xilinx
Demo
© Copyright 2019 Xilinx
Dom0-less and PVCalls
>> 20
U-Boot
Xen
Dom0
DomU 1 DomU 2
CPU CPU CPU
boots
boots
DomU 3
CPU
xl
Frontend Backend
Network
Card
© Copyright 2019 Xilinx
Dom0-less and PVCalls
>> 21
U-Boot
Xen
Dom0
DomU 1 DomU 2
CPU CPU CPU
boots
DomU 3
CPU
xl
Frontend Backend
Network
Card
Private Network
© Copyright 2019 Xilinx
Questions?
© Copyright 2019 Xilinx
Adaptable.
Intelligent.

More Related Content

PDF
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
PDF
ELC21: VM-to-VM Communication Mechanisms for Embedded
PDF
2018 Genivi Xen Overview Nov Update
PDF
Xen in Safety-Critical Systems - Critical Summit 2022
PDF
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
PDF
XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...
PDF
System Device Tree and Lopper: Concrete Examples - ELC NA 2022
PDF
Rootlinux17: An introduction to Xen Project Virtualisation
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
ELC21: VM-to-VM Communication Mechanisms for Embedded
2018 Genivi Xen Overview Nov Update
Xen in Safety-Critical Systems - Critical Summit 2022
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...
System Device Tree and Lopper: Concrete Examples - ELC NA 2022
Rootlinux17: An introduction to Xen Project Virtualisation

What's hot (20)

PDF
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
PDF
Arm device tree and linux device drivers
PDF
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...
PPTX
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
PPTX
Linux Kernel Booting Process (1) - For NLKB
PDF
LFCollab14: Xen vs Xen Automotive
PPTX
ALSS14: Xen Project Automotive Hypervisor (Demo)
PDF
Xen Memory Management
PDF
OSSNA18: Xen Beginners Training
PDF
Xen on ARM for embedded and IoT: from secure containers to dom0less systems
PDF
Virtualization Support in ARMv8+
PDF
systemd
PDF
XPDDS17: Shared Virtual Memory Virtualization Implementation on Xen - Yi Liu,...
PDF
Kernel Recipes 2017 - An introduction to the Linux DRM subsystem - Maxime Ripard
PDF
Xvisor: embedded and lightweight hypervisor
PDF
Xen and the art of embedded virtualization (ELC 2017)
PDF
BusyBox for Embedded Linux
PDF
Reverse Mapping (rmap) in Linux Kernel
PDF
Device Tree for Dummies (ELC 2014)
PDF
Linux Systems: Getting started with setting up an Embedded platform
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Arm device tree and linux device drivers
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
Linux Kernel Booting Process (1) - For NLKB
LFCollab14: Xen vs Xen Automotive
ALSS14: Xen Project Automotive Hypervisor (Demo)
Xen Memory Management
OSSNA18: Xen Beginners Training
Xen on ARM for embedded and IoT: from secure containers to dom0less systems
Virtualization Support in ARMv8+
systemd
XPDDS17: Shared Virtual Memory Virtualization Implementation on Xen - Yi Liu,...
Kernel Recipes 2017 - An introduction to the Linux DRM subsystem - Maxime Ripard
Xvisor: embedded and lightweight hypervisor
Xen and the art of embedded virtualization (ELC 2017)
BusyBox for Embedded Linux
Reverse Mapping (rmap) in Linux Kernel
Device Tree for Dummies (ELC 2014)
Linux Systems: Getting started with setting up an Embedded platform
Ad

Similar to XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx (20)

PDF
ELC2019: Static Partitioning Made Simple
PDF
NFD9 - Matt Peterson, Data Center Operations
PPT
OLUG_xen.ppt
PDF
2015.10.05 Updated > Network Device Development - Part 1: Switch
PDF
RunX ELCE 2020
PDF
XPDDS18: Xenwatch Multithreading - Dongli Zhang, Oracle
PDF
Intel DPDK Step by Step instructions
PPSX
Linux configer
PDF
SR-IOV, KVM and Emulex OneConnect 10Gbps cards on Debian/Stable
PPTX
Vagrant, Ansible, and OpenStack on your laptop
PDF
NetBSD on Google Compute Engine (en)
PDF
Xen time machine
PDF
Armboot process zeelogic
PPTX
Big Data in Container; Hadoop Spark in Docker and Mesos
PDF
Learning kubernetes
KEY
the NML project
PDF
Hacking the swisscom modem
PDF
Containers with systemd-nspawn
PDF
Xen Debugging
PDF
SR-IOV+KVM on Debian/Stable
ELC2019: Static Partitioning Made Simple
NFD9 - Matt Peterson, Data Center Operations
OLUG_xen.ppt
2015.10.05 Updated > Network Device Development - Part 1: Switch
RunX ELCE 2020
XPDDS18: Xenwatch Multithreading - Dongli Zhang, Oracle
Intel DPDK Step by Step instructions
Linux configer
SR-IOV, KVM and Emulex OneConnect 10Gbps cards on Debian/Stable
Vagrant, Ansible, and OpenStack on your laptop
NetBSD on Google Compute Engine (en)
Xen time machine
Armboot process zeelogic
Big Data in Container; Hadoop Spark in Docker and Mesos
Learning kubernetes
the NML project
Hacking the swisscom modem
Containers with systemd-nspawn
Xen Debugging
SR-IOV+KVM on Debian/Stable
Ad

More from The Linux Foundation (20)

PDF
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
PDF
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
PDF
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
PDF
XPDDS19 Keynote: Unikraft Weather Report
PDF
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
PDF
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
PDF
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
PPTX
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
PDF
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
PDF
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
PDF
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
PDF
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
PDF
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
PDF
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
PDF
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
PDF
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
PDF
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
PDF
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
PDF
XPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSE
PDF
XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Unikraft Weather Report
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
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: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
XPDDS19: Support of PV Devices in Nested Xen - Jürgen Groß, SUSE
XPDDS19: Application Agnostic High Availability Solution On Hypervisor Level ...

Recently uploaded (20)

PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PPTX
Introduction to Artificial Intelligence
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PPTX
ISO 45001 Occupational Health and Safety Management System
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PPTX
Online Work Permit System for Fast Permit Processing
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
Digital Strategies for Manufacturing Companies
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Understanding Forklifts - TECH EHS Solution
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PPTX
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PPTX
Odoo POS Development Services by CandidRoot Solutions
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Introduction to Artificial Intelligence
Which alternative to Crystal Reports is best for small or large businesses.pdf
ISO 45001 Occupational Health and Safety Management System
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Online Work Permit System for Fast Permit Processing
Operating system designcfffgfgggggggvggggggggg
Wondershare Filmora 15 Crack With Activation Key [2025
How Creative Agencies Leverage Project Management Software.pdf
Digital Strategies for Manufacturing Companies
Odoo Companies in India – Driving Business Transformation.pdf
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Understanding Forklifts - TECH EHS Solution
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Adobe Illustrator 28.6 Crack My Vision of Vector Design
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Odoo POS Development Services by CandidRoot Solutions

XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx

  • 1. © Copyright 2019 Xilinx Stefano Stabellini – Xen Developer Summit July 2019 Xen Dom0-less
  • 2. © Copyright 2019 Xilinx Traditional Xen System Configuration and Boot >> 2 U-Boot Xen Dom0 DomU 1 DomU 2 CPU0 CPU1 CPU2 boots xl
  • 3. © Copyright 2019 Xilinx Traditional Xen System Configuration and Boot >> 3 U-Boot Xen Dom0 DomU 1 DomU 2 CPU0 CPU1 CPU2 boots xl quit
  • 4. © Copyright 2019 Xilinx The problem ˃ Boot Time total > xen + dom0_kernel + dom0_user ˃ Safety Certifications Dom0 doesn’t have to be Linux but it typically is non-Linux Dom0 exit Dom0 after boot ˃ Complexity build-time complexity ‒ Yocto rootfs build runtime flexibility ‒ Monitoring ‒ VMs restart
  • 5. © Copyright 2019 Xilinx Dom0-less
  • 6. © Copyright 2019 Xilinx Dom0-less System Configuration and Boot >> 6 U-Boot Xen Dom0 DomU 1 DomU 2 CPU CPU CPU loads into memoryloads into memory
  • 7. © Copyright 2019 Xilinx Dom0-less System Configuration and Boot >> 7 U-Boot Xen Dom0 DomU 1 DomU 2 CPU CPU CPU boots boots
  • 8. © Copyright 2019 Xilinx Dom0-less System Configuration and Boot >> 8 U-Boot Xen Dom0 DomU 1 DomU 2 CPU CPU CPU Dom0DomU 3 CPU xl Frontend Backend Dom0-less VMs
  • 9. © Copyright 2019 Xilinx U-Boot + Device Tree protocol ˃ Load all the required binaries via U-Boot commands tftpb 0x4000000dom0less/mpsoc.dtb tftpb 0x80000 dom0less/Image-dom0 tftpb 0x5000000dom0less/uXen tftpb 0xd000000 dom0less/dom0-ramdisk.cpio.uboot tftpb 0xa000000 dom0less/Image-domU tftpb 0xb000000 dom0less/domU-ramdisk.cpio bootm 0x5000000 0xd000000 0x4000000
  • 10. © Copyright 2019 Xilinx U-Boot + Device Tree protocol ˃ Advertise and configure Dom0-less VMs via Device Tree domU1 { compatible = "xen,domain"; memory = <0x20000>; cpus = 1; vpl011; module@a000000 { compatible = "multiboot,kernel", "multiboot,module"; reg = <0xa000000 0xffffff>; bootargs = "console=ttyAMA0"; }; module@b0000000 { compatible = "multiboot,ramdisk", "multiboot,module"; reg = <0xb000000 0xffffff>; }; };
  • 11. © Copyright 2019 Xilinx Dom0-less Device Assignment >> 11 U-Boot Xen Dom0 DomU 1 DomU 2 CPU CPU CPU boots boots Network Card Other Devices
  • 12. © Copyright 2019 Xilinx Dom0-less Device Assignment ˃ Configured via a nested device tree snippet domU1 { […] module@a000000 { compatible = "multiboot,kernel", "multiboot,module"; reg = <0xa000000 0xffffff>; bootargs = "console=ttyAMA0"; }; module@b0000000 { compatible = "multiboot,ramdisk", "multiboot,module"; reg = <0xb000000 0xffffff>; }; module@c000000 { compatible = "multiboot,device-tree", "multiboot,module"; reg = <0xc0000000xffffff>; }; };
  • 13. © Copyright 2019 Xilinx Dom0-less Device Assignment ˃ Configured via a nested device tree snippet the device tree node of the device to assign same as for regular DomUs Special properties: ‒ interrupts: interrupts to remap ‒ interrupt-parent: special reference to GIC parent (65000) ‒ xen,path: path to the device node in the main DT ‒ xen,reg: memory to remap /dts-v1/; / { #address-cells = <0x2>; #size-cells = <0x1>; passthrough { compatible = "simple-bus"; ranges; #address-cells = <0x2>; #size-cells = <0x1>; ethernet@ff0e0000 { compatible = "cdns,zynqmp-gem"; status = "okay"; interrupt-parent = <0xfde8>; interrupts = <0x0 0x3f 0x4 0x0 0x3f 0x4>; xen,path = "/amba/ethernet@ff0e0000"; xen,reg= <0x0 0xff0e0000 0x1000 0x0 0xff0e0000>; reg = <0x0 0xff0e0000 0x1000>; clock-names = "pclk", "hclk", "tx_clk", "rx_clk"; #address-cells = <0x1>; #size-cells = <0x0>; […]
  • 14. © Copyright 2019 Xilinx True Dom0-less >> 14 U-Boot Xen DomU 1 DomU 2 CPU CPU boots boots Network Card PL Block boots
  • 15. © Copyright 2019 Xilinx Dom0-less and safety critical applications >> 15 U-Boot Xen Dom0 DomU 1 Safety Critical DomU 2 Safety Critical CPU CPU CPU boots boots DomU 3 Non-Critical CPU xl Network Card
  • 16. © Copyright 2019 Xilinx Dom0-less and PV drivers >> 16 U-Boot Xen DomU 1 DomU 2 CPU CPU boots boots Network Card Netfront boots Netback Doesn’t work today!
  • 17. © Copyright 2019 Xilinx Dom0-less Pros & Cons Pros: ˃ Much faster startup times total ~= xen + domU ˃ Enable true Dom0-less configurations Excellent for small systems Easier to certify ˃ Lower Complexity No need for the Xen tools Does not require Yocto, just cross-build Xen No need for Xen support in Dom0-less VMs, no need for CONFIG_XEN Cons: ˃ No monitoring and restarting DomUs without Dom0 ˃ No PV frontends/backends without Dom0
  • 18. © Copyright 2019 Xilinx Status & TODO ˃ DONE basic Dom0-less booting upstream in Xen 4.12 device assignment implemented and sent to the list (not upstream) ˃ TODO True Dom0-less Shared memory and interrupts for VM-to-VM communications PV frontends/backends drivers for Dom0-less VMs
  • 19. © Copyright 2019 Xilinx Demo
  • 20. © Copyright 2019 Xilinx Dom0-less and PVCalls >> 20 U-Boot Xen Dom0 DomU 1 DomU 2 CPU CPU CPU boots boots DomU 3 CPU xl Frontend Backend Network Card
  • 21. © Copyright 2019 Xilinx Dom0-less and PVCalls >> 21 U-Boot Xen Dom0 DomU 1 DomU 2 CPU CPU CPU boots DomU 3 CPU xl Frontend Backend Network Card Private Network
  • 22. © Copyright 2019 Xilinx Questions?
  • 23. © Copyright 2019 Xilinx Adaptable. Intelligent.