Enhancement of ARINC 653 for Multi-core Hardware

Slides:



Advertisements
Similar presentations
An Overview Of Virtual Machine Architectures Ross Rosemark.
Advertisements

Threads, SMP, and Microkernels
Using MapuSoft Instead of OS Vendor’s Simulators.
Ensuring Operating System Kernel Integrity with OSck By Owen S. Hofmann Alan M. Dunn Sangman Kim Indrajit Roy Emmett Witchel Kent State University College.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
INTRODUCTION OS/2 was initially designed to extend the capabilities of DOS by IBM and Microsoft Corporations. To create a single industry-standard operating.
Figure 1.1 Interaction between applications and the operating system.
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
Slide 3-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 3 Operating System Organization.
Case study 2 Android – Mobile OS.
MultiPARTES Towards Model-Driven Engineering for Mixed- Criticality Systems: MultiPARTES Approach A. Alonso, C. Jouvray, S. Trujillo, M.A. de Miguel, C.
Stack Management Each process/thread has two stacks  Kernel stack  User stack Stack pointer changes when exiting/entering the kernel Q: Why is this necessary?
Virtualization Technology Prof D M Dhamdhere CSE Department IIT Bombay Moving towards Virtualization… Department of Computer Science and Engineering, IIT.
Tanenbaum 8.3 See references
Wind River VxWorks Presentation
Microkernels, virtualization, exokernels Tutorial 1 – CSC469.
UNIX System Administration OS Kernal Copyright 2002, Dr. Ken Hoganson All rights reserved. OS Kernel Concept Kernel or MicroKernel Concept: An OS architecture-design.
Eric Keller, Evan Green Princeton University PRESTO /22/08 Virtualizing the Data Plane Through Source Code Merging.
Virtualization: Not Just For Servers Hollis Blanchard PowerPC kernel hacker.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Computers Operating System Essentials. Operating Systems PROGRAM HARDWARE OPERATING SYSTEM.
Ihr Logo Operating Systems Internals & Design Principles Fifth Edition William Stallings Chapter 2 (Part II) Operating System Overview.
Vendor Presentation SigAda 2005 George Romanski
VxWorks Fall 2005 Final Project CS 450: Operating Systems Section 1 Kenneth White Josh Houck Karl Ridgeway Mike Ripley Morgan Serene.
Disco : Running commodity operating system on scalable multiprocessor Edouard et al. Presented by Vidhya Sivasankaran.
Scott Ferguson Section 1
1 Threads, SMP, and Microkernels Chapter Multithreading Operating system supports multiple threads of execution within a single process MS-DOS.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Design and Implementation of Spacecraft Avionics Software Architecture based on Spacecraft Onboard Interface Services and Packet Utilization Standard Beijing.
Protection of Processes Security and privacy of data is challenging currently. Protecting information – Not limited to hardware. – Depends on innovation.
© 2015 Wind River. All Rights Reserved. Integrating FACE™ Aligned Componentry Larry Kinnan Principal Technologist, Wind River.
Certification Mac Mollison. Who mandates certification? l FAA (Federal Aviation Administration) »Standards DO178B, DO297 l DoD (Department of Defense)
Threads, SMP, and Microkernels Chapter 4. Processes and Threads Operating systems use processes for two purposes - Resource allocation and resource ownership.
Virtualization Neependra Khare
Introduction to Operating Systems Concepts
Computer System Structures
Introduction to threads
cFS Platforms OSAL and PSP
Operating System Overview
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Let's talk about Linux and Virtualization in 'vLAMP'
Microsoft® System Center Virtual Machine Manager 2008
Chapter 19: Real-Time Systems
Current Generation Hypervisor Type 1 Type 2.
cFE FSW at APL & FSW Reusability
John Backes, Rockwell Collins Dan DaCosta, Rockwell Collins
The Mach System Sri Ramkrishna.
Cisco Data Virtualization
Operating System Structure
Performance Testing Methodology for Cloud Based Applications
Design and Implementation of Spacecraft Avionics Software Architecture based on Spacecraft Onboard Interface Services and Packet Utilization Standard Beijing.
Introduction of Week 3 Assignment Discussion
OS Virtualization.
cFS Community Day Platform Technology Roadmap
Threads, SMP, and Microkernels
Virtualization Layer Virtual Hardware Virtual Networking
Chapter 4: Threads.
QNX Technology Overview
Boston (Burlington), Mass. November 14-15, 2018
Chapter 2: The Linux System Part 1
IS3440 Linux Security Unit 7 Securing the Linux Kernel
Lecture 4- Threads, SMP, and Microkernels
B.Ramamurthy Chapter 2 : Appendix
Multithreaded Programming
Chapter 19: Real-Time Systems
Operating Systems: A Modern Perspective, Chapter 3
Outline Operating System Organization Operating System Examples
John Backes, Rockwell Collins Dan DaCosta, Rockwell Collins
Operating Systems Structure
Presentation transcript:

Enhancement of ARINC 653 for Multi-core Hardware Stephen Olsen VxWorks Product Line Manager This presentation contains no export restricted information.

Safe & Secure RTOS Platform VxWorks Safe & Secure RTOS Platform

Agenda Industry Trends What is ARINC 653? Multicore issues Overview of the VxWorks 653 Single and Multi-core Edition Q&A

Main Aerospace & Defense Trends More Functionality – smarter avionics, SWaP, more payload Autonomous systems Global procurement/partnerships Safe and Secure Pressure on development costs, schedule Pressure on operational costs (personnel, training, spares) More Functionality – more lethality/survivability, integrated battlefield, more arms and armor Cyber warfare (more computer-based systems) Coalitions/interoperation Secure and Safe Pressure on development cost, schedule Pressure on operational costs (personnel, training, spares)

System Implications More functions, “systems of systems,” more connectivity in less space, weight, and power (SWaP), reduced cabling Hardware consolidation (multiple applications on fewer processors) Software “pressure”: larger volume of Software comingled on fewer processors New challenges to Safe and Secure

Federated versus IMA Federated IMA PROs Traditional methodology (Well Understood) Relative “ease” of Design and certification Supply chain geared for this CONs SWaP – Each function is separate LRU Poor S/W Re-use Poor portability Poor modularity Tier 1 at mercy of Primes ($$ for Tier 1) PROs SWaP (multiple functions on single LRU) Excellent S/W re-use Excellent portability Excellent modularity CONs “Modern” methodology (777, A380, 787…) Poorly understood Complexity of design and certification Supply chain not setup for IMA projects

aerospace What is ARINC 653?

ARINC 653 Avionics Application Standard Software interface APEX (Application Executive) APIs Space and Time partitioning Safety of Real Time Operating System (RTOS) Multiple applications with different safety requirements Integrated Modular Avionics (IMA) VxWorks 653 is specifically tuned to address the needs of ARINC 653 Separate DO-297-based, role-based development for platform supplier, application suppliers, and system integrator DAL: Design Assurance Levels

ARINC 653 APEX (APplication EXecutive) The ARINC 653 specification defines a general purpose APEX (Application/Executive) interface between the OS and the application software Partition management Process management Time management Inter-partition communication Intra-partition communication Error Handling © 2013 Wind River Systems, Inc.

VxWorks 653 Single/dual core aerospace VxWorks 653 Single/dual core 7-themes.com

VxWorks 653 Single/Dual-core (up to 2.x) Certifiable to RTCA DO-178C, Level A Support certification of multiple design assurance levels(DAL) on multiple cores running concurrently Fault isolation and containment: Health Monitors The module operating system shall manage and enforce configuration of interconnect functions on the underlying architecture including IO, memory and caches Static configuration and enforcement in accordance with ARINC 653 Role-based configuration per RTCA/DO-297

VxWorks 653 2.x IMA Architecture Flight Control (FC) Application Level A Radar Application Level B Graphics Generator Application Level C Display Application Level D Thread Scheduling Only User Mode ARINC 653 Partition OS POSIX Partition OS VxWorks Partition OS Ada/Java Partition OS VxWorks 653 Application Executive XML Configuration Data Kernel Mode Partition Scheduling Only Architecture Support Package (ASP) Board Support Package (BSP) Hardware IMA Integrated Modular Avionics

High-Performance, Two-Level Scheduling Partition 1 Partition 2 T1 T1 T2 T2 T3 T3 T4 Partition OS Partition OS Partition 1 Time Slice Partition 2 Time Slice Execution Idle Execution Idle This slide shows the second level of scheduling in the two level scheduler. This second level is application process scheduling which implements the ARINC 653 priority preemptive scheduling mechanism. One item to note that with ARINC 653 scheduling, improperly designed application can result in wasted time within a partition minor frame time. This is undesirable since this time could be used for other background type processing such as built in self test and other low priority processing. This effect is common when initially migrating applications from a federated system into the IMA environment, and must be addressed in order to achieve the performance desired. Time

VxWorks 653 Multi-core Edition aerospace VxWorks 653 Multi-core Edition

Multi-core System Issues Contention makes it difficult to prove that timing constraints are met Most SoC’s uses hardware that is shared between cores Designs and effects of sharing are often unavailable Sharing effects may change as SoC microcode is updated Addressing these issues can involve additional cert effort Performance and certification costs depend on matching the choice of strategies of the multicore hardware and the software application

CAST-32A Appendix has mapping from CAST 32 to 32A Certification Authorities Software Team CAST-32A (Multi-Core Processors) FAA-published guidance on usage of multi-core processors in aviation Available free on FAA website Topics Applicable to Multi-Core Processors (MCP) in Safety-Critical Applications Sixteen objectives on MCP Determinism Six objectives for MCP Software Two objectives for MCP Error Handling CAST paper addresses only 2 cores at this time, but is largely applicable to more than 2 cores Wind River Verification Activities will support many objectives, but integrators will need to conduct additional activities to ensure compliance Released November 2016 CAST-32A Appendix has mapping from CAST 32 to 32A

VxWorks 653 3 Multi-core Edition Requirements Certifiable to RTCA DO-178C, Level A Support certification of multiple design assurance levels(DAL) on multiple cores running concurrently Fault isolation and containment: Health Monitors The module operating system shall manage and enforce configuration of interconnect functions on the architecture Static configuration and enforcement in accordance with ARINC 653 Role-based configuration per RTCA/DO-297 Separate DO-297-based, role-based development for platform supplier, application suppliers, and system integrator DAL: Design Assurance Levels

VxWorks 653 3.0 Multi-core Edition Safety Architecture Available 2015 ARINC Ports

VxWorks 653 3.0 Multi-core Edition Time Scheduler With the time partition scheduler, system integrators can schedule multiple guests in a specific time window to be scheduled on a core.

Roles of the MOS and POS in 3.0 Multi-core Edition Partition OS (POS) VxWorks Cert 6.6.7 Native kernel BSP has Virtualization component Device drivers are distributed to each Partition OS APEX library Application IBLL Module OS (MOS) Uses only devices required to enforce partitioning Manages access to common architecture specific resources Provides services for communication, health monitoring and emulation System Fault Handling Configuration management MOS Kernel Emulation VM Interface Core VM HW Platform Module OS Services BSP Drivers VM API ASP VxWorks Cert kernel VxWorks Cert API APEX Module OS Virtual Machine Application CV Configuration Data 653 Platform Software VM HW access interfaces Is there an equivalent to the MOS? Where do I put my kernel code? How/where do I register device drivers? In 2.x, I add them to the MOS. IBLL independent build link and load APEX: Application Executive

VxWorks 653 MCE Use Case - Migration Step 1 Re-host existing uni-core platform using a single core of a multicore Minimizes risk but allows for characterization in the new environment to establish a baseline of performance and resolve any issues using existing techniques and understanding Criteria for success easily established and bounded Step 2 Redeploy platform by moving partition(s) to other core(s) Re-distribute IO to allow for dedicated resources per partition Perform characterization of new configuration against Step 1

VxWorks 653 Application Executive Multi-Core Hardware Board Support Architecture Support VxWorks 653 Application Executive XML Data Core 0 Core 1 Core 2 Core 3 Weather Radar Application DAL C VxWorks Cert Partition OS Flight Display Application DAL A Flight Mission Application DAL B Step 1 Rehost Avionics Bus (MIL STD 1553, ARINC 429, ARINC 664, SAE AS6802...)

VxWorks 653 Application Executive Multi-Core Hardware Board Support Architecture Support VxWorks 653 Application Executive XML Data Core 0 Core 1 Core 2 Core 3 Flight Display Application DAL A VxWorks Cert Partition OS Flight Mission Application DAL B Step 2 Redeploy Avionics Bus (MIL STD 1553, ARINC 429, ARINC 664, SAE AS6802...)

VxWorks 653 Application Executive Multi-Core Hardware Board Support Architecture Support VxWorks 653 Application Executive XML Data Core 0 Core 1 Core 2 Core 3 Applications DAL E Wind River Linux Guest OS Application DAL A 3rd Party Flight Critical Application VxWorks Cert Partition OS Federated Application and OS example with new content added Avionics Bus (MIL STD 1553, ARINC 429, ARINC 664, SAE AS6802...)

VxWorks 653 Application Executive Multi-Core Hardware Board Support Architecture Support VxWorks 653 Application Executive XML Data Core 0 Core 1 Core 2 Core 3 Applications DAL D VxWorks 7 Guest OS DAL E Wind River Linux DAL A – DAL E 3rd Party Flight Critical Application DAL A VxWorks Cert Partition OS IMA platform with applications and OS example with new content added Avionics Bus (MIL STD 1553, ARINC 429, ARINC 664, SAE AS6802...)

VxWorks 653 Application Executive Multi-Core Hardware Board Support Architecture Support VxWorks 653 Application Executive XML Data Core 0 Core 1 Core 2 Core 3 IO Server DAL A VxWorks Cert Partition OS Applications DAL E Linux Guest OS DAL A - DAL E 3rd Party Weather Radar Application DAL C Flight Display Application Flight Mission Application DAL B Redeploy Avionics Bus (MIL STD 1553, ARINC 429, ARINC 664, SAE AS6802...)

DO-297 Role Separation Application Suppliers Display Platform Supplier System Integrator XML Tables FMS XML Tables XML Config File XML Tables XML Tables Nav XML Config File XML Tables XML Config File XML Config File XML Config File XML Compiler/Checker DO-178B Qualified Development Tool XML Business Rules Binary Configuration Data Multi-Core Hardware Platform DO –297, Integrated Modular Avionics (IMA) Development Guidance and Certification Considerations by the RTCA SC-200 described a number of stakeholders in the IMA design characteristics. Wind River has used this guidance and role definition to create a cohesive set of tools and processes to allow full realization of the DO-297 potential in any size project Through the extensive use of XML as described in ARINC 653 we allow separation of these roles to support dispersed development which has provided the ability to support such global programs such as the Boeing 787 Dreamliner. By use of the DO-178B Qualified XML compiler/checker, the Wind River solution avoids costly and time consuming traceability steps that are required by other RTOS vendors without qualified development tools. 29 29

Conclusion Important industry trends are leading to integrated systems. ARINC 653 addresses these needs both for single and multi-core. VxWorks 653 addresses ARINC 653 Remember: Safety and Security paramount

aerospace VxWorks MILS