Presentation is loading. Please wait.

Presentation is loading. Please wait.

Avionics Middleware October 15, 2010 Bipasa Chattopadhyay.

Similar presentations


Presentation on theme: "Avionics Middleware October 15, 2010 Bipasa Chattopadhyay."— Presentation transcript:

1 Avionics Middleware October 15, 2010 Bipasa Chattopadhyay

2 Outline What is Middleware?  General applications. Structure and functionality of Middleware.  ACE  CORBA / RT-CORBA  TAO Real-Time CORBA Scheduling Service. Validation of safety critical Middleware for Avionics. Alternative Middleware Architecture for UAVs.

3 What is Middleware? Software that provides a link between separate software applications.  If a new software application replaces an existing one then it should be able to communicate with the rest of the system.  If application software is less dependent on underlying OS and hardware then OS and hardware can be upgraded without affecting the application software. Gained popularity in the 1980s - link newer software applications to older legacy systems.

4 Middleware sits in the middle of the software application layer and OS. Distinction between OS and Middleware functionality is, to some extent, arbitrary.  TCP/IP stack for telecommunications was originally a Middleware functionality but nowadays it is included in the OS. Supports distributed architectures  Middleware allows interaction between distributed software applications (client-server) running on one or more machines.

5 General applications Information Technology  Middleware is integral to modern information technology based on XML, Web services, and service-oriented architecture.  Facilitates message passing between different systems or components in standard formats. E-commerce  Rapid and secure transactions over many different types of computer environments.

6 Wireless sensor networks (WSN)  WSN developers can integrate OS and hardware with the wide variety of applications. Data Mining  Businesses use Middleware applications to link information from departmental databases housed in multiple geographic locations and extract necessary information.

7 Middleware has become popular in many industries because of its ability to–  Link resources across dissimilar networks and computing platforms.  Decouple software applications from the underlying OS and hardware. Examples of COTS Middleware – CORBA, J2EE,.NET ect.

8 Analogous to Middleware, Embedded Middleware is a software layer that sits "in the middle" of embedded application and the Real Time Operating System (RTOS). Example of Embedded Middleware – Real-Time CORBA.

9 Outline What is Middleware?  General applications. Structure and functionality of Middleware.  ACE  CORBA / RT-CORBA  TAO Real-Time CORBA Scheduling Service. Validation of safety critical Middleware for Avionics. Alternative Middleware Architecture for UAVs.

10 Structure and functionality of Middleware

11 Host Infrastructure Middleware  Encapsulates and enhances native OS communication and concurrency mechanism to create portable and reusable components.  The components help to abstract away incompatibilities of individual OS.  Eliminates dependencies on low-level OS programming API, such as Sockets or Posix thread. Example - Adaptive Communication Environment (ACE), Real-time Java Virtual Machines based on Real- time specification for Java.

12 ACE ACE has been used in a wide range of commercial and military systems, including missile control and avionics mission computing. ACE runs on a wide range of OS platforms including Win 32, most versions of UNIX, VxWorks, LynxOS.

13 Distribution Middleware  Defines higher-level distributed programming models that extend the native OS programming capabilities encapsulated by host infrastructure middleware.  Enables developers to program distributed applications like stand-alone applications.  Supports Object Oriented distributed programming. Example – Common Object Request Broker Architecture (CORBA)

14 CORBA CORBA is a standard developed by the Object Management Group (OMG). The CORBA specification defines an architecture of interfaces and services that must be provided by the Object Request Broker (ORB).  Not much implementation details.

15 The ORB provides the mechanism required for distributed objects to communicate with one another independent of location (remote or local), hardware platforms, communication protocol and interconnects, OS and programming languages. The CORBA Interface Definition Language (IDL) allows the development of language and location independent interfaces for distributed objects.

16 RT-CORBA End-To-End System Predictability Priority banding Resource Management Thread pools  RT CORBA mutex Soft Real time CORBA Hard Real time CORBA  The ORB must respect priorities, bound thread priority inversions, bound latencies of operation invocations

17 Fixed Priority Scheduling  Real-time CORBA priority specifies how to relate native OS priority throughout the system in a consistent manner ORBexpress, ACE-TAO ORB

18 Common Middleware Services  Services that define high level programming components that allow application developers to concentrate on programming application logic without the need to write code for lower level Middleware features.  Abstraction to an abstraction.. Example- CORBA Component Model (CCM), CORBA Event Service

19 Domain-Specific Middleware Services  Domain-Specific Middleware services are tailored to the requirements of particular system domains, such as avionics mission computing, radar processing, weapons targeting etc.  Domain-specific services are the least developed of the Middleware layers.

20 Boeing’s Bold Stroke uses – PowerPC processor VME communication protocol VxWorks OS. ACE infrastructure middleware Real-time CORBA distribution middleware CORBA Event Service common middleware services.

21 Outline What is Middleware?  General applications. Structure and functionality of Middleware.  ACE  CORBA / RT-CORBA  TAO Real-Time CORBA Scheduling Service. Validation of safety critical Middleware for Avionics. Alternative Middleware Architecture for UAVs.

22 RT-CORBA Scheduling Services Conventionally static scheduling has been used to meet Real-Time requirements in CORBA Middleware. We look at a specific example of scheduling CORBA operations for Real-Time applications using static / dynamic / hybrid scheduling. ACE-TAO ORB incorporates a strategized scheduling service framework.  Allows the developer to choose between RMS, EDF, MLF and MUF as the preferred scheduling strategy.

23 Purely dynamic scheduling (EDF, MLF) compared to RMS. Advantages –  Overcomes the utilization limitation of RMS.  Handle harmonic and non-harmonic periods comparably. Disadvantages –  Higher overhead to evaluate at run-time.  No control over which operation misses its deadline in case of overload.  EDF has an additional disadvantage because you can not tell whether a job will miss its deadline until it misses it.

24 Maximum Urgency First Supports determinism of static scheduling and flexibility of dynamic scheduling. TAO supports a variant of MUF.  MUF allows control over which job will miss its deadline.

25 Comparison of EDF, MLF and MUF

26 Design of TAO’s Strategized Scheduling Service

27 Overview of TAO ensure that application timing requirements are specified and enforced demultiplexes incoming requests to servants delivers client requests to the object adapter and returns responses to clients Real time ORB uses multi threaded, pre-emptive, priority based connection and concurrency architecture. ensures that Real-Time requirements are met

28 Goals Maximize total utilization.  If a critical task does not use WCET then non-critical task can be dispatched. Preserving scheduling guarantees for critical operations.  In case of overload only non-critical tasks miss their deadline. Adaptive scheduling.  Allow applications to select which operations are critical.

29 TAO Terminology RT_Operation – Scheduled CORBA operation. RT_Info – A struct that contains  Criticality – high criticality tasks cause greater damage to the performance of the system if they don’t finish before deadline.  Worst-case execution time.  Period.  Importance – used as a “tie-breaker” for operations with identical priority.  Dependencies – obtained from control flow.

30 Operation, Scheduling and Dispatching terminology

31 A scheduling strategy takes the information provided by an operation’s RT_Info structutre. Assigns an urgency to the operation based on its static priority, dynamic subpriority, and static subpriority values.

32 Maps urgency into dispatching priority and dispatching subpriority values for the operation. Provides dispatching queue configuration information so that each operation can be dispatched according to its assigned dispatching priority and dispatching subpriority.

33 Strategized Scheduling Framework

34 Input / Output interface TAO’s scheduling services depends upon the application.  Drawback - if we change one characteristic of the operation then we have to manually modify the rest in order to be consistent. Input interface allows application to specify the entire set of possible characteristics. Mappings between the input and output interfaces are entirely encapsulated.

35 Input / Output interface Each scheduling strategy specifies 2 distinct levels in its mapping from input interface to output interface  1) Assign urgency components i.e. static priority, dynamic subpriority and static subpriority.  2) Assign dispatching priorities and subpriorities in the output interface based on above. TAO allows the scheduling strategy and the underlying dispatching model to vary independently.

36 Avionics Applications ACE+TAO are being used by Northrop Grumman and Boeing on Wedgetail.

37 Outline What is Middleware?  General applications. Structure and functionality of Middleware.  ACE  CORBA / RT-CORBA  TAO Real-Time CORBA Scheduling Service. Validation of safety critical Middleware for Avionics. Alternative Middleware Architecture for UAVs.

38 Middleware in Avionics Middleware helps to minimize the code that has to be verified when the underlying system microprocessor and network are changed.  Shift to commodity hardware instead of proprietary hardware.  Without re-validating the system software.

39 Current OMG Real-time CORBA specifications do not meet DO-178B guidelines. Memory footprint of CORBA is not small enough for avionics.

40 Challenges for Avionics Middleware System Partitioning – currently no commercial ORB supports time and space partitioning. DO-255 requires that the Avionics Computing Resource (ACR) has the necessary hardware and software mechanism to ensure that time, space and I/O allocations are static.  Safety critical applications are provided the necessary computing resources.

41 ACR software performs access mediation between partitions – complete, tamper-proof and assured. CORBA needs to have space partitions for security.  Some ORB functionality may need to shift to OS. ORB could provide a consistent communication mechanism between partitions.

42 Fault tolerance (F-T) – Simplest method – multiple instances of objects running in the system and some fault detection mechanism says which one to use. Second method – Factory Object that replicates the object on another computing resource in the system. Third method – have ORB support for Object Fragmentation in which parts of an object’s functionality can be replicated in the system.

43 Areas to improve Cobra F-T  F-T components need to be well specified for interoperability.  Using knowledge of time dependant data changes to predict correctness.  Using above knowledge produced at definite intervals for liveness checks.  No Real-Time provision in the current F-T specification (OMG R-T SIG plans to work on it)

44 Quality of service  Predictable latency, jitter and end-to-end data throughput.  Predictable RTOS, Communication protocols, ORB. Reflective Middleware  Describes a system that can reason about and act upon itself.  Systems react dynamically; the dynamic behavior should be predictable.

45 Avionics Domain Services  The topmost layer of middleware.  Aircraft Abstraction layer – system designers can design the system from a high level model based viewpoint. High Assurance  CORBA is finding its way into less critical parts of commercial avionics.  ACE and TAO is being used by Boeing in the mission computer of a military weapons platform.

46 Outline What is Middleware?  General applications. Structure and functionality of Middleware.  ACE  CORBA / RT-CORBA  TAO Real-time CORBA Scheduling Service. Validation of safety critical Middleware for Avionics. Alternative Middleware Architecture for UAVs.

47 Middleware for UAVs Alternative Middleware Architecture for UAVs. Based on Service Oriented Architecture (SOA). Small number of useful functionalities are more important than the large implementation of CORBA.  Due to the complexity and completeness of Middleware platforms efficiency may be compromised.

48 Middleware takes the form of a service container.  Services do not need information about the other participating services, including their existence or location. Uses Data Distribution System (DDS) to communicate information over the network.  Publish/subscribe model for sending and receiving data among nodes. DDS model has been shown to be very efficient for distributing time-critical information.

49 Middleware Architecture based on SOA Service container can communicate with services installed in the same container or in other service containers present in the same local network. The high level protocols are designed to maximize the performance of services using the multicast capabilities of the underlying network.

50 Conclusion COBRA / R-T CORBA Middleware based on Service Oriented Architecture (SOA). Ad-hoc Middleware (Ovm) – Real time and dependable.  Open implementation of Middleware for Java applications developed under the A3M project. Focused on space applications. Middleware for large number of wireless sensors – has delay tolerance but power management constraints.

51 References Adaptive and Reflective Middleware for Distributed Real-Time and Embedded Systems, D. C. Schmidt. The Design And Performance Of A Real Time CORBA Scheduling Service, C. D. Gill et al. Towards Safety Critical Middleware for Avionics Applications, D. A. Haverkamp et al. A Middleware Architecture For UAVs, J. Lopez et al. http://www.ois.com/Products/what-is-real-time-corba.html http://www.cs.wustl.edu/~schmidt/TAO.html

52 Thank you !


Download ppt "Avionics Middleware October 15, 2010 Bipasa Chattopadhyay."

Similar presentations


Ads by Google