Using a Hypervisor to Manage Multi-OS Systems Cory Bialowas, Product Manager

Similar documents
10 Steps to Virtualization

Simplifying the Development and Debug of 8572-Based SMP Embedded Systems. Wind River Workbench Development Tools

Security and Performance Benefits of Virtualization

Multicore Challenges and Choices: Deciding Which Solution Is Right for You

Primary Multicore Software Configurations Mark Hermeling, Senior Product Manager Wind River

Applying Multi-core and Virtualization to Industrial and Safety-Related Applications

Wind River. All Rights Reserved.

RTOS, Linux & Virtualization Wind River Systems, Inc.

A Data-Centric Approach for Modular Assurance Abstract. Keywords: 1 Introduction

Real Safe Times in the Jailhouse Hypervisor Unrestricted Siemens AG All rights reserved

LINUX CONTAINERS. Where Enterprise Meets Embedded Operating Environments WHEN IT MATTERS, IT RUNS ON WIND RIVER

Software Development Using Full System Simulation with Freescale QorIQ Communications Processors

BUILDING FUNCTIONAL SAFETY PRODUCTS WITH WIND RIVER VXWORKS RTOS

Hypervisor Market Overview. Franz Walkembach. for GENIVI AMM, April 19 th, 2018 (Munich) SYSGO AG Public

Software Quality is Directly Proportional to Simulation Speed

Hardware assisted Virtualization in Embedded

Making Full use of Emerging ARM-based Heterogeneous Multicore SoCs

Applying MILS to multicore avionics systems

THE RTOS AS THE ENGINE POWERING THE INTERNET OF THINGS

A Big Little Hypervisor for IoT Development February 2018

Developing Across the Continuum of Intel Platforms

Multicore platform towards automotive safety challenges

FLUID COMPUTING. ARC FORUM, India Ricky Watts Director of Industrial Solutions, Wind River IN A SOFTWARE-DEFINED WORLD

Carrier Grade Linux and VxWorks

HKG : OpenAMP Introduction. Wendy Liang

BUILDING the VIRtUAL enterprise

A unified multicore programming model

EMC2. Prototyping and Benchmarking of PikeOS-based and XTRATUM-based systems on LEON4x4

Designing Security & Trust into Connected Devices

Tile Processor (TILEPro64)

Virtual Platform Software Simulation for Enhanced Multi-core Software Verification

Addressing Complexity in Connected & Autonomous Vehicles (and in fact everything else )

INVITATION FOR QUOTATION. TEQIP-III/2018/uceo/Shopping/14

Making MCP more agile for ING Best of both worlds

Virtualization, Xen and Denali

Embedded Linux Architecture

2011 IBM Research Strategic Initiative: Workload Optimized Systems

SIERRAWARE SIERRATEE FOR MIPS OMNISHIELD

Developing deterministic networking technology for railway applications using TTEthernet software-based end systems

Profiling and Debugging OpenCL Applications with ARM Development Tools. October 2014

[TITLE] Virtualization 360: Microsoft Virtualization Strategy, Products, and Solutions for the New Economy

Protecting Mission-Critical Workloads with VMware Fault Tolerance W H I T E P A P E R

Knut Omang Ifi/Oracle 20 Oct, Introduction to virtualization (Virtual machines) Aspects of network virtualization:

Real-Time Cache Management for Multi-Core Virtualization

Making the Factory Floor Smarter with IoT and VxWorks

Using Industry Standards to Exploit the Advantages and Resolve the Challenges of Multicore Technology

Xen and the Art of Virtualization. CSE-291 (Cloud Computing) Fall 2016

Data Model Considerations for Radar Systems

SmartNICs: Giving Rise To Smarter Offload at The Edge and In The Data Center

vnetwork Future Direction Howie Xu, VMware R&D November 4, 2008

Software Driven Verification at SoC Level. Perspec System Verifier Overview

Heterogeneous Software Architecture with OpenAMP

NIC-PCIE-4RJ45-PLU PCI Express x4 Quad Port Copper Gigabit Server Adapter (Intel I350 Based)

A So%ware Developer's Journey into a Deeply Heterogeneous World. Tomas Evensen, CTO Embedded So%ware, Xilinx

KVM on Embedded Power Architecture Platforms

Security: The Key to Affordable Unmanned Aircraft Systems

Deflating the hype: Embedded Virtualization in 3 steps

Open Source in Automotive Infotainment

Chapter 3 Virtualization Model for Cloud Computing Environment

Next Generation Enterprise Solutions from ARM

TITANIUM CLOUD VIRTUALIZATION PLATFORM

BUILDING A NEXT-GENERATION FIREWALL

OpenOnload. Dave Parry VP of Engineering Steve Pope CTO Dave Riddoch Chief Software Architect

REAL TIME OPERATING SYSTEM PROGRAMMING-I: VxWorks

Secure Partitioning (s-par) for Enterprise-Class Consolidation

Container Adoption for NFV Challenges & Opportunities. Sriram Natarajan, T-Labs Silicon Valley Innovation Center

SIMPLIFYING THE CAR. Helix chassis. Helix chassis. Helix chassis WIND RIVER HELIX CHASSIS WIND RIVER HELIX DRIVE WIND RIVER HELIX CARSYNC

System Impact of Distributed Multicore Systems December 5th 2012

Distributed IMA with TTEthernet

Parallel Simulation Accelerates Embedded Software Development, Debug and Test

Introduction. COMP /S2 Week Gernot Heiser UNSW/NICTA/OKL. Distributed under Creative Commons Attribution License 1

Disaggregation and Virtualization within the Juniper Networks Mobile Cloud Architecture. White Paper

XE1-P241. XE1-P241 PCI Express PCIe x4 Dual SFP Port Gigabit Server Adapter (Intel I350 Based) Product Highlight

The Next Steps in the Evolution of Embedded Processors

IoT It s All About Security

Designing, developing, debugging ARM Cortex-A and Cortex-M heterogeneous multi-processor systems

VMware: Server Virtualization and Storage

Open Server Architecture

NEW LIFE FOR EMBEDDED SYSTEMS IN THE INTERNET OF THINGS

Trustzone Security IP for IoT

Introduction. COMP9242 Advanced Operating Systems 2010/S2 Week 1

WIND RIVER TITANIUM CLOUD FOR TELECOMMUNICATIONS

Data Path acceleration techniques in a NFV world

Multicore ARM Processors for Safety Critical Avionics

Performance Considerations of Network Functions Virtualization using Containers

Infotainment Solutions. with Open Source and i.mx6. mentor.com/embedded. Andrew Patterson Business Development Director Embedded Automotive

WIND RIVER NETWORKING SOLUTIONS

Remote Health Monitoring for an Embedded System

Using a Separation Kernel to Protect against the Remote Exploitation of Unaltered Passenger Vehicles

Abstract. Testing Parameters. Introduction. Hardware Platform. Native System

CSC501 Operating Systems Principles. OS Structure

VMware ESX Server 3i. December 2007

evm for Windows* User Manual

ClearPath Secure Java Overview For ClearPath Libra and Dorado Servers

The Next Steps in the Evolution of ARM Cortex-M

AVOIDING THE 2020 WINDOWS 10 ATM HARDWARE UPGRADE CYCLE A PROOF OF CONCEPT

Merging Enterprise Applications with Docker* Container Technology

Building High Performance, Power Efficient Cortex and Mali systems with ARM CoreLink. Robert Kaye

The MILS Partitioning Communication System + RT CORBA = Secure Communications for SBC Systems

WIND RIVER VXWORKS MULTI-CORE EDITION

Transcription:

Using a Hypervisor to Manage Multi-OS Systems Cory Bialowas, Product Manager cory.bialowas@windriver.com

Trends, Disruptions and Opportunity Wasn t life simple? Single-OS: SMP OS OS CPU Single Core Virtualization OS OS Core 1 Core 2 Multi-OS : AMP Multicore Virtualization Hypervisor CPU Multicore OS Core 1 OS Core 2 OS OS OS Hypervisor Virtualization Core 1 Core 2 2

Multicore and/or Virtualization Usage Scenarios Business Drivers Cost Time to Market Safety/Security Performance Features/Differentiators Multicore and/or Virtualization Usage Scenarios Performance Consolidation Separation/Security Migration/Evolution Usability Portability/Scalability Certification Reliability Initial interest often comes from either a multicore or virtualization perspective, however capabilities that may have been initially thought of classified as one or the other will be applicable.

Case Study: Networking Offload Business Concern(s) Cost (Hardware, Development) Performance Usage Scenario(s) Performance Consolidation AMP Configuration Control Plane WR Linux Packet Processing VxWorks Or Exec Packet Processing VxWorks Or Exec... Multicore Processor (> 8, 16, etc. Cores) Packet Processing VxWorks Or Exec Core 0 Core 1 Core 2 Core n Multiple OS, core loading VxWorks: high speed IPC, system level debug and profile Performance of RTOS with rich Linux environment

Case Study: Networking Offload (Protected) Business Concern(s) Cost (Hardware, Development) Performance Usage Scenario(s) Performance Consolidation Reliability Control Plane WR Linux Packet Processing VxWorks Or Exec Packet Processing VxWorks Or Exec WR Hypervisor... Packet Processing VxWorks Or Exec Core 0 Core 1 Core 2 Core n AMP + Automated load, lifecycle mgmt. Memory Protection robustness with low to no overhead Multicore Processor (> 8, 16, etc. Cores)

Case Study: Asset Bridge Business Concern(s) Cost Time to Market Features/ Differentiators Usage Scenario(s) Migration/Evolution Consolidation Usability Existing Application Other OS WR Hypervisor New Application WR Linux Virtualization and/or AMP Leverage and evolve existing assets Innovate and in new environment Networking, Industrial Single or Multicore Processor

Case Study: Safety, Usability Business Concern(s) Cost Safety Features/ Differentiators Usage Scenario(s) Certification Consolidation Usability Virtual Board 1 Virtual Board 2 Safety Critical Human Machine Application Interface Application VxWorks (Certifiable) Wind River Linux or bare metal Wind River Hypervisor (Certifiable) Preserve certification efforts. Innovate and in new environment Industrial, Transport Single or Multicore Processor

Case Study: Evolution, Usability Business Concern(s) Cost Features/ Differentiators Usage Scenario(s) Migration/Evolution Usability Virtual Board 1 Real-time Control Application RTOS Wind River Hypervisor Virtual Board 2 Networking/Graphical Application Wind River Linux Preserve existing assets, continue to meet real-time constraints Innovate and in new environment Single or Multicore Processor

Definitions Virtualization - abstraction of computer resources (cores, memory, other resources), hiding the physical characteristics from the end user (OS or Application) Hypervisor software that provides a virtualization platform allowing multiple OSs (or bare metal virtual boards) to run on a system

Multiple Operating Systems: Challenges 5 - Debug Application 3 Application 3 Wind River VxWorks 2 Wind River Linux Application 2 1 and 4 1 and 4 1 and 4 Physical Board IDE Ethernet Timer Serial Memory Core Core 1. Hardware resource partitioning 2. Multi-OS booting 3. High-speed IPC 4. Resource access/sharing (consoles, network interfaces, file IO) 5. Debug connectivity

Virtual Boards 1) Hardware Resource Partitioning Virtual Board 1 Virtual Board 2 Virtual Board 3 Application Operating System 1 Ethernet VCore Memory DMA Timer BUS Application Operating System 2 Serial Ethernet VCore Memory DMA Timer Application VCore Memory DMA Timer Wind River Hypervisor Physical Board IDE Ethernet Timer Serial Memory Core Core

Device Trees Define Boards 1) Hardware Resource Partitioning Virtual Board 1 Virtual Board 2 Virtual Board 3 Application Operating System 1 Application Operating System 2 Application Device Tree Device Tree Serial Ethernet Ethernet Memory DMA MIPC BUS Memory DMA MIPC Configuration Tool Verification Device Tree Memory DMA Timer Memory DMA MIPC Configuration Commands BUS Ethernet Ethernet Physical Board Timer Serial Memory Core Core

Summary 1) Hardware Resource Partitioning Explicit control of hardware resources Semantic check of logical boards is possible Generated device tree is provided to hypervisor or OS Interrupts steering and mapping (provided by virtual interrupt controller) 13

Booting 2) Multi-OS Booting Boot Image (ELF format) Bare Metal 2 Bare Metal 1 Linux Packaging Tool Hypervisor ELF Image VxWorks ELF Image (vxworks.st) Linux ELF Image (zimage.elf) Bare Metal 1 ELF Image (app1.elf) VxWorks Bare Metal 2 ELF Image (app2.elf) XML Configuration Image Manifest Hypervisor XML Configuration

Summary 2) Multi-OS Booting Ease of building system and loading target Configuration files decoupled from image (change memory regions, interrupt routing, etc.) Integrated Lifecycle Management notification of guest OS failures, ability to manipulate (start/stop/reload) from another guest OS

Tailored IPCs 3) High-Speed IPC Shared Memory High performance MIPC High Performance, Zero Copy OS Independent 20k footprint Hardware Support Static topology TIPC 100k footprint Full Featured Transparent multiboard Dynamic topology Physical Board Physical Board Core 1 Virtual Board Virtual Board App 4 App 5 MIPC MIPC Linux 1 Core Virtual Board Virtual Board App TIPC Linux 1 App TIPC Linux 2 Ethernet Core 2 Virtual Board App 6 MIPC Linux 2 Phys Board App TIPC Linux 3 Ethernet SIPC (Secure IPC)

Summary 3) High-Speed IPC High speed IPC available not just between physical cores, but also between virtual boards Memory protection provided by VMMU ensures IPC does not corrupt system memory, improving reliability Can select between performance (MIPC), transparency (TIPC), and security (SIPC)

Shared Devices 4) Resource Sharing/ Access Virtual Board Virtual Board APP APP NET NET Linux 1 Linux 2 VDD VB MIPC Services VB MIPC Services VDD DM DD Hypervisor Ethernet Use virtual devices when the board has too few physical devices Use existing driver from another OS Share when one OS not using entire capacity of device Transparent to operating system

Shared Networking and I/O 4) Resource Sharing/ Access Virtual Board Virtual Board APP DSSC DIOSC VB MIPC Services VB MIPC Services DSS DIOS NET I/O OS FILE OS DD DD Wind River Hypervisor Ethernet IDE One networking stack and/or file system supports any number of operating systems Smaller footprint than with one stack for each OS Operating system without networking or filesystem can still use them

Summary 4) Resource Sharing/ Access Device/service access is same as unsupervised AMP, however since the IPC between logical boards uses memory protected by the VMMU robustness is improved

Bay N etworks Bay N etworks Bay N etworks Multiple Context Debugging with Workbench 5) Debug Connectivity Multiple Targets One Wind River Workbench instance Target manager Multiple simultaneous connections including shared connections Multiple OS types supported simultaneously Multiple target processors supported simultaneously Multiple Contexts Core, process, or thread Each context has a set of views: Source Stack Registers Host System Target System Control Processors Function Processors Processes/Threads Qualify breakpoints on a process or specific thread Stop the entire process or an individual thread Target boards may be any mix of physical, logical, or virtual boards and any mix of up or SMP VxWorks and Wind River Linux - and bare metal sw. 21

Virtualization and Multicore with Workbench 5) Debug Connectivity Host System with Wind River Workbench WDB TCP/IP WDB MIPC WDB OCD Wind River Linux Logical Logical Board Board Logical Board Wind River Linux VxWorks Logical Logical Board Board Logical Board Wind River Linux Logical Logical Board Board Virtual Board Wind River Linux VxWorks Logical Logical Board Board Virtual Board Wind River Hypervisor (Multicore) Physical Board

Multicore Multiprocessing Core Virtualization CORE SMP AMP Virtualization Bare CORE CORE CORE CORE Virtual Board Virtual Board Virtual Board Virtual Board Virtual Board VCore Mem Timer SMP OS VxWorks Linux VxWorks VCore IDE Bus VC M T Serial VC M T VC M T VC M T E Wind River Hypervisor Configuration Eth Serial Bus Memory Core Core Core Core Core

Protection and zero-overhead Core Protection Virtual Board Virtual Board Virtual Board Virtual Board Windows Linux Core Mem Core Eth VCore M Legacy VCore M Wind River Hypervisor Eth Serial Memory Core Core Core Core VxWorks Memory Eth Configuration Windows, Linux and Legacy are protected from each other, but not from VxWorks VxWorks is protected from all other guests VxWorks directly accesses all its hardware, Hypervisor does not execute on VxWorks core

Conclusions Multi-OS AMP designs are workable and the best solution in some situations. Introducing a hypervisor provides advantages: Development productivity (automated partitioning, fewer faults, debug improvements) More robust systems (memory protection, interrupt handling, lifecycle management) Optimization of hardware resources (shared resources, core virtualization, leverage hardware virtualization features) 25

Wind River for Virtualization Based on single point of failure avionics technology and undergoing multi-million dollar evaluation to EAL6+ for security Optimal integration with Wind River operating systems and open/flexible to support other operating systems Extensive hardware support (PPC, Intel, MIPS, ARM, others) Hypervisor s scalability allows balancing of security, reliability and safety against performance and footprint Wind River Workbench provides configuration, flexible debug approaches, and performance analysis and tuning. Also, it isn t just about virtualization, needs to be part of a comprehensive multicore software solution

Wind River s Multicore Software Solution 1. Flexible multicore software configurations (SMP/AMP/Virtualization and combinations thereof) 2. Support for real-time (VxWorks) and general purpose (Wind River Linux) OSs - and the openess/flexibility to support other operating systems and executives 3. High speed, transparent, and/or secure IPC infrastructure across board, core, and operating system boundaries 4. Optimized middleware for multicore (networking offload/crypto) 5. Tools to configure, debug, analyze, and optimize entire multicore and multi-os systems

Looking forward Wind River s Multicore Software Solution provides for the optimization of devices by allowing device makers to get the most out of new hardware, leverage existing software assets, and innovating with new software. Future proofs investments by being adaptable to future hardware and software as it becomes available.

Wind River s Multicore Software Solution http://www.windriver.com/announces/multicore-software/index.html?home=1

8548 Multi-OS Demonstration Technology Lab