GYTE - Bilgisayar Mühendisliği Bölümü Bilgisayar Mühendisliği Bölümü GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR NEXT GENERATION MIDDLEWARE.

Slides:



Advertisements
Similar presentations
MicroKernel Pattern Presented by Sahibzada Sami ud din Kashif Khurshid.
Advertisements

Object-Oriented Application Frameworks Much of the cost and effort stems from the continuous re- discovery and re-invention of core concepts and components.
Programming Languages for End-User Personalization of Cyber-Physical Systems Presented by, Swathi Krishna Kilari.
Software Architecture Frameworks A Family of Implementations Nikunj Mehta Computer Science Department University of Southern California Los Angeles, CA.
The road to reliable, autonomous distributed systems
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB JavaForum.
ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research.
19/02/2004 Slide 1 Internal Presentation by : Sergio Maffioletti Pervasive and Artificial Intelligenge research group On : « The.
1 SWE Introduction to Software Engineering Lecture 23 – Architectural Design (Chapter 13)
CORBA Case Study By Jeffrey Oliver March March 17, 2003CORBA Case Study by J. T. Oliver2 History The CORBA (Common Object Request Broker Architecture)
1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area.
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
Using Architecture Frameworks
Grids and Grid Technologies for Wide-Area Distributed Computing Mark Baker, Rajkumar Buyya and Domenico Laforenza.
Demystifying Architectural Styles Nikunj Mehta 3/11/02Demystifying Architectural Styles2 Architectural Styles Characterize –Structure, i.e. external.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
.NET Mobile Application Development Remote Procedure Call.
26th May, Middleware or Simulator for Autonomic Communications Yang Qiu Networking Laboratory Helsinki University of Technology
C++ fundamentals.
Enterprise Systems & Architectures. Enterprise systems are mainly composed of information systems. Business process management mainly deals with information.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Tufts Wireless Laboratory School Of Engineering Tufts University “Network QoS Management in Cyber-Physical Systems” Nicole Ng 9/16/20151 by Feng Xia, Longhua.
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
Web services: Why and How OOPSLA 2001 F. Curbera, W.Nagy, S.Weerawarana Nclab, Jungsook Kim.
Chapter 6 Operating System Support. This chapter describes how middleware is supported by the operating system facilities at the nodes of a distributed.
Architecture-Based Runtime Software Evolution Peyman Oreizy, Nenad Medvidovic & Richard N. Taylor.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Other Topics RPC & Middleware.
1 06/00 Questions 10/6/2015 QoS in DOS ECOOP 2000John Zinky BBN Technologies ECOOP 2000 Workshop on Quality of Service in Distributed Object Systems
Wireless Access and Terminal Mobility in CORBA Dimple Kaul, Arundhati Kogekar, Stoyan Paunov.
CS 390- Unix Programming Environment CS 390 Unix Programming Environment Topics to be covered: Distributed Computing Fundamentals.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
New features for CORBA 3.0 by Steve Vinoski Presented by Ajay Tandon.
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
Service Oriented Architectures Presentation By: Clifton Sweeney November 3 rd 2008.
Advanced Design and System Patterns The Microkernel Pattern.
SCALABLE EVOLUTION OF HIGHLY AVAILABLE SYSTEMS BY ABHISHEK ASOKAN 8/6/2004.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
1 UNIT –II Architecting Web Service. 2 Why SOA? – business point of view  Information Technology (IT) workers face many challenges, including: Limited.
07/09/04 Johan Muskens ( TU/e Computer Science, System Architecture and Networking.
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
CSE 451: Operating Systems Winter 2015 Module 22 Remote Procedure Call (RPC) Mark Zbikowski Allen Center 476 © 2013 Gribble, Lazowska,
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Managing Cross-Cutting QoS Issues in MULTE Middleware T. Plagemann, F. Eliassen, B. Hafskjold, T. Kristensen, R.H. Macdonald and H.O. Rafaelsen University.
GLOBE DISTRIBUTED SHARED OBJECT. INTRODUCTION  Globe stands for GLobal Object Based Environment.  Globe is different from CORBA and DCOM that it supports.
Jini Architecture Introduction System Overview An Example.
1 Object Oriented Logic Programming as an Agent Building Infrastructure Oct 12, 2002 Copyright © 2002, Paul Tarau Paul Tarau University of North Texas.
16/11/ Semantic Web Services Language Requirements Presenter: Emilia Cimpian
EGOS LLC CCSDS 14/ Question Question; Why a Service Viewpoint? Short Answer; Because a service viewpoint provides a useful additional level.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
SelfCon Foil no 1 Variability in Self-Adaptive Systems.
MPEG-4: Multimedia Coding Standard Supporting Mobile Multimedia System Lian Mo, Alan Jiang, Junhua Ding April, 2001.
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB Markus.
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
The Role of Reflection in Next Generation Middleware
Distribution and components
CORBA Within the OS & Its Implementation
Ch > 28.4.
CSE 451: Operating Systems Winter 2006 Module 20 Remote Procedure Call (RPC) Ed Lazowska Allen Center
Component--based development
Chapter 20 Object-Oriented Analysis and Design
CSE 451: Operating Systems Winter 2007 Module 20 Remote Procedure Call (RPC) Ed Lazowska Allen Center
Service Oriented Architecture (SOA)
CSE 451: Operating Systems Winter 2004 Module 19 Remote Procedure Call (RPC) Ed Lazowska Allen Center
CSE 451: Operating Systems Spring 2012 Module 22 Remote Procedure Call (RPC) Ed Lazowska Allen Center
CSE 451: Operating Systems Autumn 2009 Module 21 Remote Procedure Call (RPC) Ed Lazowska Allen Center
Quality-aware Middleware
CSE 451: Operating Systems Autumn 2010 Module 21 Remote Procedure Call (RPC) Ed Lazowska Allen Center
CSE 451: Operating Systems Messaging and Remote Procedure Call (RPC)
Presentation transcript:

GYTE - Bilgisayar Mühendisliği Bölümü Bilgisayar Mühendisliği Bölümü GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR NEXT GENERATION MIDDLEWARE BIL 601 ADVANCED TOPICS IN OPERATING SYSTEMS DO Ğ U SIRT DECEMBER 2013

GYTE - Bilgisayar Mühendisliği Bölümü CONTENT Introduction Background On Reflection An Architecture for Reflective Middleware Experiments in Reflective Middleware Concluding Remarks 2

GYTE - Bilgisayar Mühendisliği Bölümü INTRODUCTION 3 The role of middleware is to present a unified programming model for coders. Also works for masking out problems of heterogenity and distribution. Standards should remain adaptive to new challenges ( multimedia, real time apps, mobility etc.) Such challenges require new approaches to be able to configure the underlying support. It is necessary for a system’s underlying components to be ready for inspection and adaptation at runtime.

GYTE - Bilgisayar Mühendisliği Bölümü INTRODUCTION 4 Current generation platforms Not configurable Black Box (details hidden) Propose an approach to the designing of configurable and open middleware platforms based on concept of reflection. Reflective architecture for next generation middleware platforms.

GYTE - Bilgisayar Mühendisliği Bölümü BACKGROUND ON REFLECTION Reflection Hypothesis “In as much as a computational process can be constructed to reason about an external world in virtue of comprising an ingredient process formally manipulating representations of that world so too a computational process could be made to reason about itself in virtue of comprising and ingredient process formally manipulating representations of its own operation an structures” (Smith 1982) 5

GYTE - Bilgisayar Mühendisliği Bölümü BACKGROUND ON REFLECTION A program can access, reason about and alter its own interpretation Access to the interpreter is provided through a meta object protocol(MOP) which defines services available at the meta level. Example: Operations available at the meta level include altering the semantics of message passing over a wireless link and inserting before or after method invocations. 6

GYTE - Bilgisayar Mühendisliği Bölümü BACKGROUND ON REFLECTION Open engineering It can be used for inspecting the internal behavior of a language or system. By exposing the underlying implementation, it becomes straightforward to insert additional behaviour to monitor the implementation. Although reflection is a promising technique, there are a number of potentional drawbacks of this approach. 7

GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR REFLECTIVE MIDDLEWARE RM_ODP (Reference Model for Open Distributed Processing) Computational Model Objects can have multiple interfaces Operational stream and signal interfaces are supported. Explicit bindings can be created between compatible interfaces. Per Object Meta Space Each object various capacities for reflection Control over the support (problems of maintaining integrity are minimised due to the limited scope of the change) Meta object groups 8 General Principles

GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR REFLECTIVE MIDDLEWARE 9 Procedural Approach Meta level exposes the actual program that implements the system. Casual connection(As the implementation itself directly manipulated). Meta-Space Models Closely related but distinct meta models. Seperation of concerns between different system aspects. composition(), encapsulation(), environment() operations. General Principles

GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR REFLECTIVE MIDDLEWARE Objects can have multiple interfaces Each interface has an associated encapsulation and environment meta model. Compositional model is associated with the object itself and common to all interfaces. 10 DESIGN / The structure of the meta space

GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR REFLECTIVE MIDDLEWARE 11 DESIGN

GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR REFLECTIVE MIDDLEWARE Composition Access the object in terms of constituent objects Composition of object represented as an object graph,in which constituent objects are connected together Some objects in this graph can be binding objects,allowing distributed configurations to be created Encapsulation Provides access to the representations of a particular interface in terms of its sets of methods and associated attributes. Language Dependent 12 DESIGN

GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR REFLECTIVE MIDDLEWARE DESIGN 13 Enviroment Represents the execution environment for each interfaces traditionally provided by the middleware platform. Functions such as message arrival, enqueing, selection dispatching, thread creation and scheduling.

GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR REFLECTIVE MIDDLEWARE 14 Groups provide a uniform mechanism for invoking a set of interfaces. For example, groups can be used, at the base level, to multicast new share price information or at the meta level, to insert a new QoS monitoring method. DESIGN / Reflecting Groups

GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR REFLECTIVE MIDDLEWARE Extensible library of components which can be configured to build middleware platforms Primitive Components Primitive Components Include A range of low level communications protocols, such as IP and IP multicast A range of end-system components buffers, threads A range of management policies. Scheduling policies, buffer allocation policies. 15 DESIGN / Component Framework

GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR REFLECTIVE MIDDLEWARE 16 DESIGN / Component Framework Composite Components ( open library ) A range of transport binding supporting, stream and operational interaction. Pre configured environment meta-spaces offering access to buffering, dispatching.

GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR REFLECTIVE MIDDLEWARE Reflective architecture provides strong design for future middleware platforms and offers principled and comprehensive access to the middleware platform. Proposing set of components which can be tailored to the needs of an application Configuration can be adapted at run time, should the initial environmental assumptions change. It minimizes problems of maintaining integrity. (Scoping where by every object in its own metaspace) Meta space is highly structured minimizing scope of changes 17 DISCUSSION

GYTE - Bilgisayar Mühendisliği Bölümü EXPERIMENTS IN REFLECTIVE MIDDLEWARE Adapt Project (Lancaster University and BT Labs) Open binding is an object which provides access to its compositional meta model. The use of binding object in graphs allows open binding to span multiple address spaces or multiple nodes. 18 Open Bindings

GYTE - Bilgisayar Mühendisliği Bölümü EXPERIMENTS IN REFLECTIVE MIDDLEWARE Test environment COOL-ORB, CORBA (Common Object Request Broker Architecture) implementation from Chorus Systems (Sun, Oracle) Laptops, PC’s Windows NT Switched Ethernet, Wavelan, GSM COOL-ORB support two comm, infrastructure TCP-IP CHORUS-IPC Ensemble (Orientation) Enables the programmers to select a particular protocol profile at bind time by providing list of component modules. Run time adaptation(Modification of modules and dynamic reconfiguration). 19 IMPLEMENTATION OF OPEN BINDINGS

GYTE - Bilgisayar Mühendisliği Bölümü EXPERIMENTS IN REFLECTIVE MIDDLEWARE For operational bindings Standart Corba bind call extended To enable the specification of the initial protocol graph To return an interface providing access to the meta- space Ensemble based operational bindings allow direct realisation of concept of reflective groups. 20 IMPLEMENTATION OF OPEN BINDINGS

GYTE - Bilgisayar Mühendisliği Bölümü CONCLUDING REMARKS Presented design for an next generation platforms. Exploits concept of reflection to provide the desired level of configurability and openness The most important features of design Associating meta space with every object-interface Subdivision metaspaces into three parts Consistent use of object graphs to represent composite components in the architecture Primitive and composite components 21

GYTE - Bilgisayar Mühendisliği Bölümü THANK YOU… 22