A presentation on the DPF - PowerPoint PPT Presentation

1 / 8
About This Presentation
Title:

A presentation on the DPF

Description:

Persist state with methods implemented by Ipersist ... Providing for persisting of basic byte stream (framework handles persistence) ... – PowerPoint PPT presentation

Number of Views:68
Avg rating:3.0/5.0
Slides: 9
Provided by: cstp1
Category:

less

Transcript and Presenter's Notes

Title: A presentation on the DPF


1
A presentation on the DPF
The Distributed Processing Framework
  • CS 590L - Santhosh

2
The DPF objective
  • To provide for remoting of components at run-time
  • To provide for a minimal mobile agent framework

3
Remoting components at run-time
  • Remoting a component At the conceptual level
  • Component migration may be simulated by
  • Persisting current state of the component
  • Remoting state storage information
  • Remoting component source
  • Instantiating agent on the remote machine
  • Reviving agent state
  • The DPF must provide for remoting an agents
    source, instantiating a remote agent, reviving
    the agents state, and transferring control back
    to the agent on the remote host

4
DPF Entities and Interfaces
  • Components and interfaces
  • StationManager (IStationManager) - exe
  • Station (IStation) - exe
  • Agent (IAgent) dll
  • Each component must adhere to well-defined,
    standardized interfaces in order to work with the
    framework

5
DPF Entities and Interfaces
  • Interfaces
  • IStation
  • TransferAgentToRemoteHost(in BSTR
    szRemoteHostName, in BSTR bszComponentDllFileNam
    e, in BSTR bszAgentStateSTGFileName, in CLSID
    clsidOfAgent)
  • RegisterDllComponent(in BSTR bszDllpath)
  • StartAndRunAgent()
  • CopyAgentStateFromShare(in BSTR
    bszAgentStateSTGFileName)
  • CopyAgentSourceFromShare(in BSTR
    bszComponentDllFileName)
  • IAgent
  • RunAgent (in IStation pIStation)
  • IPersist, IPersistStream, IPersistStreamInit
  • Load(IStream pStm)
  • Save(IStream pStm, BOOL fClearDirty)
  • IsDirty(void)
  • GetSizeMax(ULARGE_INTEGER pcbSize)
  • InitNew(void)
  • GetClassID(CLSID pClassID)

6
Working of the DPF prototype
  • A high level algorithm
  • Client-
  • Create Agent component DLL
  • Instantiate StationManager
  • Pass to StationManager Agent IID and CLSID
  • StationManager
  • Instantiate Station (Load Station DLL into
    memory)
  • Pass to Station Agent IID and CLSID
  • Station
  • Register Agent component
  • Instantiate Agent (Load Agent DLL into memory)
  • Call RunAgent method of Agent
  • Upon TransferAgent request, create new instance
    of Station on remote machine. Send Agent DLL and
    Agent STG files
  • Remote Station instantiates Agent on remote
    machine
  • Remote Agent retrieves persisted state and
    continues execution
  • Agent
  • Execute Agent specific code (RunAgent method)
  • Persist state with methods implemented by
    Ipersist
  • On transfer request call TransferAgent method of
    Station

7
Working of the DPF prototype
  • End user calls StationManager.exe with path to
    Agent.dll
  • StationManager calls Station.exe
  • Station registers Agent.dll
  • Station creates Agent
  • Agent executes and invokes IStation-gtTransferAgent
    ToRemoteHost() when it wants to move
  • Station invokes Remoting procedure

8
DPF Prototype The next step
  • Implementing a singleton DPF Station component
  • Providing for persisting of basic byte stream
    (framework handles persistence)
  • Comparative analysis of an Agent based scenario
    vs. a non-Agent based scenario
Write a Comment
User Comments (0)
About PowerShow.com