A distributed object system is composed of a set of entities called objects, that have a unique identification, exist in a uniform and abstract addressing space and interact through well defined interfaces, independent of machine boundaries and transparent to object location. This thesis addresses two of the large number of technical challenges introduced by these systems, namely the definition of the programming model of a distributed object system and efficient run-time techniques for sharing objects. The programming model considers passive objects that may be transparently invoked regardless of their location, and that all objects are potentially persistent. A model is proposed for separating the object interfaces from their implementations and a set of linguistic constructs and library routines is presented that allows programmers to write complex distributed applications. This proposal is validated with the description of its use in the implementation of an operating system based on the client-server architecture. The efficient run-time sharing of volatile objects is studied in the context of parallel applications. A solution based on a distributed shared object memory is proposed, in which the replica update policy is tightly integrated with the synchronization primitivesAvailable from Fundacao para a Ciencia e a Tecnologia, Servico de Informacao e Documentacao, Av. D. Carlos I, 126, 1200 Lisboa / FCT - Fundação para o Ciência e a TecnologiaSIGLEPTPortuga
To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.