Open Distributed Processing (ODP) systems simplify the task of building portable distributed applications that can interoperate even when running on heterogeneous platforms. In this paper, we report on our experience in augmenting an ODP system with tools that allow developers to build highly available distributed objects with little or no additional programming effort. Our tools are implemented within the context of the DCE and CORBA standards for distributed computing. We describe the system that we built and how the combination of DCE and CORBA often helped our efforts and sometimes impeded them. Based on our laboratory experiences, we conclude that these standards generally have a good potential for developing tools for high availability that are portable and applicable to a variety of applications in a distributed computing environment. This potential, however, is hampered by several shortcomings and problems in the specifications of the standards. Such problems could impede other developers and researchers who plan to use these standards. We discuss these problems and suggest solutions for them.
[1]
Jon Postel,et al.
Internet Protocol
,
1981,
RFC.
[2]
Daniel P. Siewiorek,et al.
High-availability computer systems
,
1991,
Computer.
[3]
Willy Zwaenepoel,et al.
Manetho: fault tolerance in distributed systems using rollback-recovery and process replication
,
1994
.
[4]
Ophir Frieder,et al.
On-the-fly program modification: systems for dynamic updating
,
1993,
IEEE Software.
[5]
Kenneth P. Birman,et al.
The process group approach to reliable distributed computing
,
1992,
CACM.
[6]
Steve Vinoski.
Distributed Object Computing With CORBA
,
1993
.
[7]
Russ Abbott,et al.
Resourceful systems for fault tolerance, reliability, and safety
,
1990,
CSUR.
[8]
Yennun Huang,et al.
Software Implemented Fault Tolerance Technologies and Experience
,
1993,
FTCS.