institute for software integrated systems dept of eecs, vanderbilt university nashville, tn, usa
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 PresentationTRANSCRIPT
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
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
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
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
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
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
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