institute for software integrated systems dept of eecs, vanderbilt university nashville, tn, usa

7
Architecture-driven, Context-specific Middleware Specializations for Distributed, Real-time and Embedded Systems Institute for Software Integrated Systems Dept of EECS, Vanderbilt University Nashville, TN, USA Akshay Dabholkar and Aniruddha Gokhale {aky,gokhale}@dre.vanderbilt.edu Presented at LCTES WIP 2010 Stockholm, Sweden Research supported by NSF CAREER Award 0845789

Upload: xuan

Post on 15-Feb-2016

37 views

Category:

Documents


0 download

DESCRIPTION

Architecture-driven, Context-specific Middleware Specializations for Distributed, Real-time and Embedded Systems . Akshay Dabholkar and Aniruddha Gokhale { aky, gokhale }@ dre.vanderbilt.edu. Presented at LCTES WIP 2010 Stockholm, Sweden Research supported by NSF CAREER Award 0845789. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Institute for Software Integrated Systems Dept of EECS, Vanderbilt University Nashville, TN, USA

Architecture-driven, Context-specific Middleware Specializations for Distributed,

Real-time and Embedded Systems

Institute for Software Integrated Systems

Dept of EECS, Vanderbilt UniversityNashville, TN, USA

Akshay Dabholkar and Aniruddha Gokhale

{aky,gokhale}@dre.vanderbilt.eduPresented at LCTES WIP 2010

Stockholm, SwedenResearch supported by NSF CAREER

Award 0845789

Page 2: Institute for Software Integrated Systems Dept of EECS, Vanderbilt University Nashville, TN, USA

1. Motivation: Why Specialize Middleware?• General-purpose

middleware offer a number of features to support a wide range of applications

• Middleware features are organized into cooperating layers

Page 3: Institute for Software Integrated Systems Dept of EECS, Vanderbilt University Nashville, TN, USA

1. Motivation: Why Specialize Middleware?• General-purpose

middleware offer a number of features to support a wide range of applications

• Middleware features are organized into cooperating layers

• But the rigid layered processing adds time and space overhead

Page 4: Institute for Software Integrated Systems Dept of EECS, Vanderbilt University Nashville, TN, USA

1. Motivation: Why Specialize Middleware?• General-purpose

middleware offer a number of features to support a wide range of applications

• Middleware features are organized into cooperating layers

• But the rigid layered processing adds time and space overhead

• In general, the application & middleware design forces are antagonistic

Page 5: Institute for Software Integrated Systems Dept of EECS, Vanderbilt University Nashville, TN, USA

Prune away unnecessary features based on domain requirements , desired configurations, platform constraints and physics of operating environment.

Optimize performance by moving away from the rigid layer processing

Incorporate domain-specific semantics through AOP and FOSD techniques

Correct-by-construction of specialized middleware stacks

Middleware Feature Layers2. What is Middleware Specialization?

Key goal: Automation of all stages of specializations

RTCORBA Features

Processor Resources

Communication Resources

Memory Resources

Page 6: Institute for Software Integrated Systems Dept of EECS, Vanderbilt University Nashville, TN, USA

3. Impediments to Middleware SpecializationNumber of How To?s• Identification of

execution context• Inference of the

specialization opportunities from the context

• Selection of specialization points and paths in middleware

• Realization of the specializations

• Automate all of the above

Node ANode B

1 Collocated Components

2 Redundant Request Creation

2

2

3

Resolution of the same dispatch

4 Redundant de-marshaling checks

5Component Generality

3

Approach based on blending together Aspect-oriented and Featured-oriented Programming; Generative Programming; and Model-driven Engineering

Page 7: Institute for Software Integrated Systems Dept of EECS, Vanderbilt University Nashville, TN, USA

4. GAMMA Approach to Middleware Specialization

Aspects/Features

(Re)Deployment metadata

FOP/AOP Tools

Deployment & Configuration

Tools

Existing Specialization Engines

Just-in-time/Runtime weavers

Controllers/adapters

Middleware Composition

Rules & Constraints

General-purpose

Middleware

Evolving Knowledge-

base of Specializations

User feedback

Specializations &

Specialization Points

Spe

cial

ized

Mid

dlew

are

Transformation Directives

Context Identification & Inference

Spl Validator

Intuitive System Modeling

Structural Models

Behavioral Models

QoS Models

Deployment Models

Generators

GAMMA leverages existing system modeling and specialization engines based on FOP/AOP, D&C and runtime weavers

Specializations need to be validated to ensure that they meet the end-to-end requirements of the application.

GAMMA allows pluggability of language-specific transformations as well as middleware platforms

Generators and Aspects for Manipulation of Middleware Architectures