Corba Disco.ps

download Corba Disco.ps

of 18

Transcript of Corba Disco.ps

  • 8/10/2019 Corba Disco.ps

    1/18

  • 8/10/2019 Corba Disco.ps

    2/18

    application specification

    implementation specification

    implementation

  • 8/10/2019 Corba Disco.ps

    3/18

  • 8/10/2019 Corba Disco.ps

    4/18

  • 8/10/2019 Corba Disco.ps

    5/18

    client_server

    partition

    client_server_implementation

    server_server_implementation

    server_seat_implementation

    client.cc server.cc seat.cc

    application specification

    implementation

    specification

    implementation

    reservation

  • 8/10/2019 Corba Disco.ps

    6/18

  • 8/10/2019 Corba Disco.ps

    7/18

  • 8/10/2019 Corba Disco.ps

    8/18

  • 8/10/2019 Corba Disco.ps

    9/18

    Corba infrastructure

    client: server:

    bool op_client(in, &out) bool op_server(in, &out)

    { execute receive_request

    execute receive_reply

    invoke s.op_server(in, out)

    execute send_request

    { Server s;

    }execute send_reply

    }

    execute refuse

    execute op or

  • 8/10/2019 Corba Disco.ps

    10/18

  • 8/10/2019 Corba Disco.ps

    11/18

  • 8/10/2019 Corba Disco.ps

    12/18

    CLIENT_C-2

    CLIENT_C-1

    SEAT_C-43t

    SEAT_C-32nil

    SEAT_C-21t

    SEAT_C-10nil

    SERVER_C-2

    SERVER_C-1

    REMOTESERVER_C SEATSEAT_C CLIENTCLIENT_C SERVERSERVER_C

    RESERVE_REMOTE

    SEAT

    SEAT_C

    CLIENT

    CLIENT_C

    SERVER

    SERVER_C

    RESERVE_LOCAL

    RESERVE_REMO

    SEAT_C-43nil

    SEAT_C-32nil

    SEAT_C-21nil

    SEAT_C-10t

    SRS_RPC-3(REQUEST)

    3

    SRS_RPC-2

    (INACTIVE)

    inactive

    SRS_RPC-1

    (REQUEST)

    0

    CLIENT_C-2nil

    CLIENT_C-1nil

    SERVER_C-2AITING_FOR_REP

    SERVER_C-1AITING_FOR_RE

    SERVER

    SERVER_C

    REFUSE_COMMIT

    RPC

    SRS_RPC

    SERVER

    SERVER_C

    SRS_RECEIVE_REQUE

    REMOTE

    SERVER_C

    SEAT

    SEAT_C

    CLIENT

    CLIENT_C

    SERV

    SERV

    RESERVE_REMOTE

    RPC

    SRS_RPC

    SERVER

    SERVER_C

    SRS_REPLY

    CLIENT

    SERVER_C

    RPC

    SRS_RPC

    SRS_RECEIVE_REPLY

    SEAT

    SEAT_C

    CLIENT

    CLIENT_C

    SERVE

    SERVE

    RESERVE_LOCAL

    CLIENT

    SERVER_C

    RPC

    SRS_RPC

    SERVE

    SERVE

    SRS_SEND_REQUEST

  • 8/10/2019 Corba Disco.ps

    13/18

  • 8/10/2019 Corba Disco.ps

    14/18

  • 8/10/2019 Corba Disco.ps

    15/18

  • 8/10/2019 Corba Disco.ps

    16/18

  • 8/10/2019 Corba Disco.ps

    17/18

  • 8/10/2019 Corba Disco.ps

    18/18