¡GoConqr estrena diseño! Cuéntanos qué te parece.

Fichas

Distributed System - Lecture 3

minal Kotwal Distributed systems Inglés 14 fichas

Distributed System - Lecture 3

Fichas del conjunto (14)

  1. 1Distributed Procedure Calls: - With distributed procedure calls you can divide programs between computer. You do this to share resources and speed up processes. - Programs can send messages via sockets - Procedure calls - the level of abstraction used by most programmers - Middleware provides a programming abstraction and masks the heterogeneity of networks and OS etcParameter passing in between processes:
    - You either pass by value or pass by reference
    - Pass by value - value copied into the invocation methods
    Pass by reference - A pointer to the parameter is passed. Server can manipulate the original data
    For DS, we use pass by value
    - Global variables - shared between client and servers
    - Local variables - private to client or server
  2. 2Local Procedure calls: - In LPC, client and server use the same address space - global variables can be used, parameters can be passed by reference - Parameters are passed locally via stack so no messages are transmitted and no data conversion is neccessaryRemote procedure calls:
    - Done somewhere on the network
    - In RPC, parameters are exchanged via messages (done by marshalling)
    - It uses request-reply protocol
    - Uses stubs to map local calls into network messages
    - Client and server use different address space - parameter pass by value only
    - Data conversion needed between client and server formats
    - Opaque references in the reply
    - All RPC systems automatically generate marshalling and unmarshalling routines to flatten call and return arguments into packet format suitable for transmission, and unpack them on receipt.
  3. 3—
  4. 4RPC Implementation gives you: - Complete location transparency - no difference between LPC and RPC - Different syntax for definition and call of procedures that can be called remotely - Different local and remote procedure callsRPC Implementation gives you: - Complete location transparency - no difference between LPC and RPC - Different syntax for definition and ...
  5. 5Middleware: - Can support a range of underlying languages - Parameters are passed by value - Interface compilers - define your service interface and it generate stubs - Interface definition processing - RMI - includes remote object handling - Other programming models - remote event notification, remote SQL access, distributed transaction processingInterface:
    - Interface specifies the procedures/ methods and the variables that can be accessed from other modules/objects
    - Service interface - in RPC refers to the specification of the procedures offered by the server. Defining the types off the input and output arguments of each of the procedures
    - Remote interface - In RMI, specifies the methods of an object for invocation by objects in other processes, defining the types of the input and output arguments
  6. 6Object, Remote Object and Remote Interface : - Object can be referred to by an object reference or the interfaceRemote object references
    - When a remote object receives a remote method invocation is specified as a remote object reference
    - Remote object reference may be passed as arguments and results of remote method invocations
    - A Remote object reference must be unique as an identifier for a remote object in a distributed system
    Object, Remote Object and Remote Interface : - Object can be referred to by an object reference or the interface
  7. 7Distributed object model - Each process contains objects. Some receive remote invocations, others receive local invocations - Remote objects are objects that can receive remote invocations - These objects need to know the remote object reference of an object in another process, in order to invoke its methods - Remote interface specifies which methods can be invoked remotelyDistributed object model - Each process contains objects. Some receive remote invocations, others receive local invocations - Remote obje...
  8. 8Distributed objects and concurrent accessnext
  9. 9Single processing vs Multi processing - Single processing - follow one sequence of instructions - a single thread of execution - If we want to do more than one task at a time, then it is up to us to multiplex our sequences of instructions (turntaking of tasks) - Multiprocessing - The OS allows different sequences of instructions to execute in parallel - While one is waiting for a resource another is executing - or Multiprocessor machine can execute multiple instructions in parallel (on difference processors) - Concurrent servers - multiple processes, multiplexing, multi-threadingParallel processing
    - Certain tasks can take a ver long time
    - so you parallelise the task
    - Split the task into several jobs
  10. 10Remote method invocation (RMI) - RMI supports externally invocable objects - It requires that the objects should be registered with the platform -When you register, An object-ID is returned - The object becomes known globally - The object can be invoked remotely, and the object-ID may be passed argumentsRemote method invocation (RMI) - RMI supports externally invocable objects - It requires that the objects should be registered with the p...
  11. 11—
  12. 12Exception Handling: - Failures can be due to exposure to additional hardware (possible error source) eg: RPC failure due to communication problems - Failures can also be due to problems during executing a procedure - happens at the remote (server) site - Failure reporting is done by raising and handling expectionsException Handling: - Failures can be due to exposure to additional hardware (possible error source) eg: RPC failure due to communication...
  13. 13Binding - Binding is mapping a name to a particular object - Static binding is done at link/build time - Dynamic binding is done before program start and under program control - Binder is a system service for binding - How to locate the binder? - binder address is always the same, and can be hard coded into programs - Binder address is in an environment variable - Client/Server broadcast a message to locate the binder - Naming class of RMIRegistry - rebind(), bind(), unbind()Binding - Binding is mapping a name to a particular object - Static binding is done at link/build time - Dynamic binding is done before p...
  14. 14Events and notification - Event - change in the system state - Publish subscribe paradigm: - Event generators can publish events for observation by others - Receivers / listeners can register interests in events of different types - Push pull approaches - Push - publishers send notification about new events - Pull - receivers ask info about new eventsdone

Información

Descripción
Distributed systems Fichas sobre Distributed System - Lecture 3, creado por minal Kotwal el 25/10/2016.
Creado por
minal Kotwal
Visitas
1
Valoración

Escríbenos

¿Sobre qué es tu mensaje?

¿Qué te parece el nuevo diseño?

¿Te gusta?