Middleware-Based OS Distributed OS Networked OS 1MEIT Application Distributed Operating System...

16
Middleware-Based OS Distributed OS Networked OS 1 MEIT Application Application Application Distributed Operating System Services Applicat ion Applicat ion Applicat ion Network OS Network OS Network OS

Transcript of Middleware-Based OS Distributed OS Networked OS 1MEIT Application Distributed Operating System...

Middleware-Based OS

Distributed OS

Networked OS

1MEIT

Application ApplicationApplication

Distributed Operating System Services

Application ApplicationApplication

Network OS Network OS Network OS

Middleware-based OS

MEIT 2

Application ApplicationApplication

Middleware Operating System Services

Networked OS Networked OSNetworked OS

Generic Middleware

• Communication stacks for c/s communication• Distributed directories for location• Authentication services for security• RPCs for accessing remote functionalities• Queuing services for synchronous & loosely

coupled communications.

MEIT 3

DCE Architecture and Services

4MEIT

Key services

• Remote Procedure Call• Directory service• Security service• Time service• Threading service• Distributed File service• IDL Compiler• Diskless service

MEIT 5

Directory service

• Cell Directory Service (CDS)

• Global Directory Service (GDS)

• Global Directory Agent (GDA)

• Directory Service Programming Interface

MEIT 6

Global Directory Agent (GDA)

MEIT 7

GDS

GDA

CDS

Directory Service Programming Interface

MEIT 8

Client Machine

Client application

CDS clerk Cache

Server Machine

RPC Server

Server Machine

Clearing house

CDS Server

Service-Specific Middleware

• Needs to accomplish a particular c/s type of service

• OLTP middleware

• Communication middleware

• Object-specific middleware

• Workflow management middleware

• Internet-specific middleware

MEIT 9

Database Middleware

• Database Middleware provides a common interface between a query and multiple, distributed databases.

• Using either a hub and spoke architecture or a distributed architecture it enables data to be consolidated from a variety of disparate data sources

10MEIT

Messaging Middleware

Common interface and transport between applications. – Stores the data in a message queue if

the target machine is down or overloaded

– May contain business logic that routes messages to the appropriate destinations and reformats the data as well.

– Similar to an e-mail messaging system, except that it is used to send data between applications.

11MEIT

Application Server Middleware

• A Web-based application server that provides interfaces to a wide variety of applications is used as middleware between the browser and legacy systems.

– The browser can be used at desktops or on laptops when travelling.

– A wide range of server-side processing has been supported by appservers (i.e.;J2EE).

12MEIT

Types of Middleware Services

1. Distributed system services, • Critical communications, program-to-program, and data management

services. • This type of service includes RPCs, MOMs and ORBs.

2. Application enabling services, • Access to distributed services and the underlying network. • This type of services includes transaction processing monitors and database

services such as Structured Query Language (SQL).

3. Middleware management services, • Which enable applications and system functions to be continuously

monitored to ensure optimum performance of the distributed environment.

13MEIT

Distributed Objects and Distributed Processing

• Distributed objects have the biggest potential to solve a wide range of challenges faced by designers of large software systems.

• Some of these challenges include – component packaging, – cross-language interoperability, – interprocess communication, and– intermachine communication.

• We separate distributed object architectures into two categories:– component architectures and – remoting architectures.

• Component architectures focus primarily on component packaging and cross-language interoperability.

• Remoting architectures focus primarily on support for remote method invocation on distributed objects.

14MEIT

Remoting Architectures

• Open Software Foundation’s (OSF) Distributed Computing Environment (DCE) – which actually is a distributed processing environment based on the Remote

Procedure Call (RPC) paradigm (purely procedural)

• Object Management Group’s (OMG) Common Object Request Broker Architecture (CORBA). – The notion of component packaging and deployment has only recently been

added to CORBA 3.0.

15MEIT

Component Architectures

• Microsoft’s Component Object Model (COM) – addresses packaging and deployment of binary component as well as cross-language

interoperability• JavaBeans and Enterprise Java Beans (EJB) component models

introduced by SUN Microsystems. • Both, COM and EJB address remoting to some extend:

– the COM model has been extended to Distributed COM (DCOM) using an extended version of DCE RPC as transport.

– EJB supports client/server communication based on Java Remote Method Invocation (RMI).

– RMI is special as it integrates closely with the Java language without requiring a special Interface Definition Language (IDL) to describe component interfaces accessible for remote invocations.

• In an evolutionary sense, Microsoft’s .NET is the newest and most advanced component architecture available in the market today.

16MEIT