corba disco.ps
TRANSCRIPT
-
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