With the creation of computer networks in the 1970s came the birth of
distributed network applications. Since then, there have been many app
lications that spanned multiple machines, but in the last 20 years no
one created a serviceable network middleware package for developing hi
ghly effective distributed applications, that is, until now. This pape
r describes the design and architecture of T Spaces, a project at the
ISM Almaden Research Center that fills the network middleware void. T
Spaces embodies the three main characteristics of a useful mechanism f
or network programs, namely, data management, computation, and communi
cation. Since it has the potential to connect any program to any other
program on a computing network, T Spaces is an ideal platform on whic
h to build a global computing services platform where any program or s
ystem service is available to any other program or service. In additio
n, its small footprint and Java(TM) implementation make T Spaces an id
eal platform for writing distributed applications for embedded and pal
m-top computers, thus forging a needed gateway from the emerging embed
ded and palm-top computers to established desktop and server computers
.