This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Structuring Fault-Tolerant Object Systems for Modularity in a Distributed Environment
April 1994 (vol. 5 no. 4)
pp. 421-432

The object-oriented approach to system structuring has found widespread acceptanceamong designers and developers of robust computing systems. The authors propose asystem structure for distributed programming systems that support persistent objects anddescribe how properties such as persistence and recoverability can be implemented. Theproposed structure is modular, permitting easy exploitation of any distributed computingfacilities provided by the underlying system. An existing system constructed according tothe principles espoused here is examined to illustrate the practical utility of the proposedapproach to system structuring.

[1] Advanced Networked Systems Architecture (ANSA) Ref. Man., Vol. A, Rel. 1.00, Part VI, "Computational Projection," 1989 (available from APM Ltd., Poseidon House, Castle Park, Cambridge CB3 0RD, UK).
[2] A. Albano, G. Ghelli, and R. Orsini, "The implementation of Galileo's persistent values," inData Types and Persistence, M. P. Atkinson, P. Buneman, and R. Morrison, Eds. New York: Springer-Verlag, 1988, pp. 253-263.
[3] M. P. Atkinson, K. J. Chisholm, and W. P. Cockshott, "PS-algol: An algol with a persistent heap,"ACM SIGPLAN Notices, vol. 17, no. 7, pp. 24-31, July 1981.
[4] R. Balter et al., "Architecture and implementation of guide, an object-oriented distributed system,"Computing Syst., vol. 4, pp. 31-67, Apr. 1991.
[5] P.A. Bernstein, V. Hadzilacos, and N. Goodman,Concurrency Control and Recovery in Database Systems, Addison-Wesley, Reading, Mass., 1987.
[6] B. Bershad, D. Ching, E. Lazowska, J. Sanislo, and M. Schwartz, "A remote procedure call facility for interconnecting heterogeneous computer systems,"IEEE Trans. Software Eng., vol. SE-13, pp. 880-894, Aug. 1987.
[7] K. P. Birman and T. A. Joseph, "Exploiting virtual synchrony in distributed systems," inProc. ACM Symp. Operat. Syst. Prin., 1987, pp. 123-138.
[8] A. Black and Y. Artsy, "Implementing location independent invocation,"IEEE Trans. Parallel Distrib. Syst., vol. 1, pp. 107-119, Jan. 1990.
[9] S. J. Caughey, G. D. Parrington, and S. K. Shrivastava, "Shadows: A flexible run-time support systems for objects in a distributed system," Tech. Rep., Dept. of Computing Sci., Univ. of Newcastle-upon-Tyne, England, 1992.
[10] S. J. Caughey, S. K. Shrivastava, and D. L. McCue, "Implementing fault-tolerant object systems on distributed memory multiprocessors,"Proc. 2nd IEEE Int. Workshop on Object Orientation in Operating Syst., 1992, pp. 172-179.
[11] G.N. Dixon et al., "The Treatment of Persistent Objects in Arjuna,"Computer J., Aug. 1989, pp. 323-332.
[12] J. F. Garza and W. Kim, "Transaction management in an object-oriented database system." inProc. ACM SIGMOD Conf. Management Data, Chicago, IL, June 1988.
[13] J. Gray, "Notes on database operation systems," inOperating Systems: An Advanced Course(Lecture Notes in Computer Science, vol. 60) Berlin: Springer-Verlag, 1978.
[14] B. Liskov and R. Scheifler, "Guardians and actions: linguistic support for robust, distributed programs,"ACM Trans. Program. Languages Syst., vol. 5, no. 3, pp. 381-404, July 1983.
[15] M. Little and S.K. Shrivastava, "Replicated Objects in Arjuna,"Proc. Workshop Management of Replicated Data, CS Press, Los Alamitos, Calif., 1990.
[16] M. C. Little, D. L. McCue, and S. K. Shrivastava, "Maintaining information about persistent replicated objects in a distributed system," Tech. Rep., Dept. of Computing Sci., Univ. of Newcastle-upon-Tyne, England, 1992.
[17] M. C. Little, "Object replication in a distributed system," Ph.D. dissertation, Dept. of Computing Sci., Univ. of Newcastle-upon-Tyne, England, 1991.
[18] D. L. McCue, "Developing a class hierarchy for Object-oriented transaction processing,"Proc. European Conf. Object-Oriented Programming, 1992, pp. 413-426.
[19] M. H. Olsen, "A persistent object infrastructure for heterogeneous distributed systems,"Proc. 2nd IEEE Int. Workshop on Object Orientation in Operating Syst., 1992, pp. 49-56.
[20] M. H. Olsen, E. Oskiewicz, and J. P. Warne, "A model for interface groups,"Proc. 10th IEEE Symp. Reliable Distrib. Syst., 1991.
[21] D. C. Oppen and Y. K. Dalal, "The Clearinghouse: A decentralized agent for locating named objects in a distributed environment," Tech. Rep. OPD-t8103, Xerox Office Products Div., Palo Alto, CA, 1981.
[22] F. Panzieri and S. K. Shrivastava, "Rajdoot: A remote procedure call mechanism supporting orphan detection and killing,"IEEE Trans. Software Eng.vol. 14, pp. 30-37, Jan. 1988.
[23] G. D. Parrington, "Reliable distributed programming in C++: The Arjuna approach,"Proc. USENIX 2nd C++ Conf., 1990, pp. 37-50.
[24] Perihelion Software Ltd.,The Helios Operating System. Englewood Cliffs, NJ: Prentice-Hall Int., ISBN 0-13-386004-3, 1989.
[25] J. Richardson and M. Carey, "Persistence in the E Language: Issues and Implementation,"Software: Practice and Experience, Vol. 19, No. 12, Dec. 1989, pp. 1115-1150.
[26] R. W. Scheifler and J. Gettys, "The X window system,"ACM Trans. Graphics, vol. 5, no. 2, pp. 79-109, 1986.
[27] F. Schneider, "Implementing fault-tolerant services using the state machine approach: A tutorial,"ACM Comput. Surveys, vol. 22, no. 4, pp. 299-319, Dec. 1990.
[28] M. P. Shapiro, Gautron, and L. Mosseri, "Persistence and migration for C++ objects,"Proc. 3rd European Conf. Object-Oriented Programming, 1989, pp. 191-204.
[29] S. K. Shrivastava, G. N. Dixon and G. D. Parrington, "An overview of the Arjuna distributed programming system,"IEEE Software, vol. 8, pp. 66-73, Jan. 1991.
[30] B. Stroustrup,The C++ Programming Language. Reading, MA: Addison-Wesley, 1986.
[31] Sun Microsystems, "Network programming," Mountain View, CA, Rev. A, May 1988.

Index Terms:
Index Termsobject-oriented methods; distributed processing; fault tolerant computing; fault-tolerantobject systems; modularity; distributed environment; object-oriented approach;distributed programming systems; persistent objects; distributed computing;object-oriented systems; migration; replication; fault tolerance; distributed systems;atomic actions; atomic transactions
Citation:
S.K. Shrivastava, D.L. McCue, "Structuring Fault-Tolerant Object Systems for Modularity in a Distributed Environment," IEEE Transactions on Parallel and Distributed Systems, vol. 5, no. 4, pp. 421-432, April 1994, doi:10.1109/71.273048
Usage of this product signifies your acceptance of the Terms of Use.