Operating Systems - PowerPoint PPT Presentation

1 / 23
About This Presentation
Title:

Operating Systems

Description:

The client stub marshalls the parameters into a message. ... normal procedure call return), which marshalls the return values into a message. ... – PowerPoint PPT presentation

Number of Views:41
Avg rating:3.0/5.0
Slides: 24
Provided by: shawnc1
Category:

less

Transcript and Presenter's Notes

Title: Operating Systems


1
Operating Systems
  • Distributed Computing
  • 12/11/00
  • Shawn Cooper

2
Distributed Computing
  • What is Distributed Computing?
  • Remote Procedure Call (RPC)
  • Components and Component Architectures
  • MS COM, EJB/J2EE
  • Whats Next
  • SOAP, .NET

3
Distributed Computing What?
  • Computing in which components comprising an
    application can be located on different computers
    connected to a network
  • Examples WEB applications, n-tiered
    architectures

4
Distributed Computing Why?
  • Goal Make things faster! More efficient!
  • Scale up vs. Scale out
  • Parallel Computing

5
Distributed Computing How?
  • Message passing mechanisms are the basis for
    distributed computing
  • Similar to a mailbox
  • RPC as the plumbing for distributed computing

6
Remote Procedure Call
7
RPC - Overview
  • Goal Should be able to execute code on a
    remote computer exactly the same as on the local
    computer
  • When making a remote procedure call
  • The calling environment is suspended, procedure
    parameters are transferred across the network to
    the environment where the procedure is to
    execute, and the procedure is executed there.
  • When the procedure finishes and produces its
    results, its results are transferred back to the
    calling environment, where execution resumes as
    if returning from a regular procedure call.

8
What happens during RPC
  • The following steps take place during an RPC
  • A client invokes a client stub procedure, passing
    parameters in the usual way. The client stub
    resides within the client's own address space.
  • The client stub marshalls the parameters into a
    message. Marshalling includes converting the
    representation of the parameters into a standard
    format, and copying each parameter into the
    message.
  • The client stub passes the message to the
    transport layer, which sends it to the remote
    server machine.
  • On the server, the transport layer passes the
    message to a server stub, which demarshalls the
    parameters and calls the desired server routine
    using the regular procedure call mechanism.

9
RPC (cont)
  • When the server procedure completes, it returns
    to the server stub (e.g., via a normal procedure
    call return), which marshalls the return values
    into a message. The server stub then hands the
    message to the transport layer.
  • The transport layer sends the result message back
    to the client transport layer, which hands the
    message back to the client stub.
  • The client stub demarshalls the return parameters
    and execution returns to the caller.

10
Issues with RPC
  • Data Format
  • Sun RPC uses XDR
  • Call By Reference
  • Global Variables

11
Components
12
Software Development
  • Goals of Software Development
  • Easier, Reusable, Robust
  • Evolution Procedural, Object Oriented,
    Components
  • Components were developed because object oriented
    languages, while helpful, have not yet achieved
    their goals of reuse

13
Components
  • What is a component?
  • Reusable, self contained building block that can
    be combined with other building blocks to form an
    application
  • Examples
  • Interface and implementation

14
Component Architectures
  • What is a component architecture
  • Eases distributed software development
  • Services
  • Transactions
  • Security
  • Object lifetime and Thread Management
  • others...
  • Examples of component architectures
  • Microsofts COM
  • Suns EJB/J2EE
  • CORBA

15
COM
  • Specification and implementation of a component
    architecture built by Microsoft
  • Components are called COM objects
  • Each COM object has a globally unique CLSID
  • Based on DCE RPC (ORPC)
  • MTS, MSMQ, DCOM

16
DCOM
  • DCOM is simply COM with a longer wire
  • How does DCOM work?


17
EJB and J2EE
  • J2EE is a specification put forth by Sun and
    implemented by external vendors
  • BEA Weblogic, IBM Websphere, Bluestones
    Total-e-Server
  • Components are called Java Beans and Enterprise
    Java Beans
  • EJBs reside inside an EJB Container which manage
    every aspect of the bean (access, security,
    persistence, transactions, concurrency, etc.).
    Clients never access the Bean directly.

18
EJB
  • Locate objects across the network with Java
    Naming and Directory Interface (JNDI) and
    communicate with remote objects using Remote
    Method Invocation (RMI)
  • JNDI allows objects to search for other objects
    by name
  • RMI is specific to Java, not compatible with RPC

19
(No Transcript)
20
Comparison
  • COM
  • MS Only
  • Windows Only
  • One Standard, One implementation
  • Fast moving
  • J2EE
  • Open Standards
  • Multiple Platforms
  • Incompatible Implementations
  • Standard Committees

21
Whats Next?
22
SOAP
  • Simple Object Access Protocol (SOAP)
    specification put forth by MS, IBM, Developmentor
  • Lightweight protocol for exchange of information
    in a distributed environment.
  • Based on Open Standards
  • An XML based protocol consisting of
  • An envelope that that defines a framework for
    describing what is in a message and how to
    process it
  • a set of encoding rules for expressing instances
    of application-defined data types
  • a convention for representing remote procedure
    calls and responses
  • Can be used over HTTP

23
QA
Write a Comment
User Comments (0)
About PowerShow.com