T Spaces

With the creation of computer networks in the 1970s came the birth of distributed network applications. Since then, there have been many applications that spanned multiple machines, but in the last 20 years no one created a serviceable network middleware package for developing highly effective distributed applications, that is, until now. This paper describes the design and architecture of T Spaces, a project at the IBM Almaden Research Center that fills the network middleware void. T Spaces embodies the three main characteristics of a useful mechanism for network programs, namely, data management, computation, and communication. Since it has the potential to connect any program to any other program on a computing network, T Spaces is an ideal platform on which to build a global computing services platform where any program or system service is available to any other program or service. In addition, its small footprint and JavaTM implementation make T Spaces an ideal platform for writing distributed applications for embedded and palm-top computers, thus forging a needed gateway from the emerging embedded and palm-top computers to established desktop and server computers.

[1]  David Gelernter,et al.  Distributed communication via global buffer , 1982, PODC '82.

[2]  Michael J. Carey,et al.  A Study of Index Structures for a Main Memory Database Management System , 1986, HPTS.

[3]  Satoshi Hirano,et al.  Performance evaluation of popular distributed object technologies for Java , 1998 .

[4]  Mahadev Satyanarayanan,et al.  Scale and performance in a distributed file system , 1988, TOCS.

[5]  Hamid Pirahesh,et al.  Using the co-existence approach to achieve combined functionality of object-oriented and relational systems , 1993, SIGMOD '93.

[6]  Yuh-Ming Shyy,et al.  VERSANT replication: supporting fault-tolerant object databases , 1995, SIGMOD '95.

[7]  Robert Tolksdorf Laura: a coordination language for open distributed systems , 1993, [1993] Proceedings. The 13th International Conference on Distributed Computing Systems.

[8]  Michael Stonebraker,et al.  The Postgres DBMS , 1990, SIGMOD Conference.

[9]  Josephine M. Cheng,et al.  IBM Database 2 Performance: Design, Implementation, and Tuning , 1984, IBM Syst. J..

[10]  François Bancilhon,et al.  Building an Object-Oriented Database System, The Story of O2 , 1992 .

[11]  Luis-Felipe Cabrera,et al.  An Evaluation of Starburst's Memory Resident Storage Component , 1992, IEEE Trans. Knowl. Data Eng..

[12]  Witold Litwin,et al.  Linear Hashing: A new Algorithm for Files and Tables Addressing , 1980, ICOD.

[13]  Michael J. Carey,et al.  Query processing in main memory database management systems , 1986, SIGMOD '86.

[14]  Malcolm C. Harrison,et al.  Expressing concurrency in Griffin , 1996, Proceedings of 1996 International Conference on Parallel and Distributed Systems.

[15]  Jack A. Orenstein,et al.  The ObjectStore database system , 1991, CACM.

[16]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[17]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[18]  Paul Melmon The Sybase Open Server , 1992, SIGMOD '92.

[19]  Doug Lea,et al.  Concurrent programming in Java - design principles and patterns , 1996, Java series.

[20]  Nicholas Carriero,et al.  Linda in context , 1989, CACM.

[21]  David J. DeWitt,et al.  QuickStore: A High Performance Mapped Object Store , 1994, SIGMOD Conference.

[22]  Fabio Vitali,et al.  PageSpace: An Architecture to Coordinate Distributed Applications on the Web , 1996, Comput. Networks.

[23]  Hamid Pirahesh,et al.  Making Real Data Persistent: Initial Experiences with SMRC , 1994, POS.