Download - Institute for Software Integrated Systems Dept of EECS, Vanderbilt University Nashville, TN, USA
![Page 1: Institute for Software Integrated Systems Dept of EECS, Vanderbilt University Nashville, TN, USA](https://reader033.vdocuments.net/reader033/viewer/2022051518/56815f13550346895dcddb49/html5/thumbnails/1.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022051518/56815f13550346895dcddb49/html5/thumbnails/2.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022051518/56815f13550346895dcddb49/html5/thumbnails/3.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022051518/56815f13550346895dcddb49/html5/thumbnails/4.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022051518/56815f13550346895dcddb49/html5/thumbnails/5.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022051518/56815f13550346895dcddb49/html5/thumbnails/6.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022051518/56815f13550346895dcddb49/html5/thumbnails/7.jpg)
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