Distribution and Persistence in the IK Platform: Overview and Evaluation.
Pedro Sousa, Manuel Sequeira, André Zúquete, Paulo A. V. Ferreira, Cristina Videira Lopes, José Pereira, Paulo Cezar Camargo Guedes, José Alves Marques · 1993
ABSTRACT: IK is an object-oriented platform that simplifies the construction of applications that handle persistent and distributed data. A single programming paradigm is used to manipulate volatile, persistent and distributed objects uniformly. Object invocation is the basic primitive of the system, embodying all the features required for transparent handling of persistence and distribution. Object references can be freely passèd as parameters in remote invocations or stored persistentlY. Objects are initially created as volatile and are automatically recycled when they are no longer referenced. Objects are promoted to persistent when they become reachable from a persistent root. Persistent objects are read from disk on demand when they are invoked and are written back to disk when the application terminates. Applications are written in a language similar to C#, but with some semantic differences. Classes are represented as special persistent objects. They are dynami-*This work was partially supported by CEC under Espnlr contracts n " 20'll, COMANDOS, and n'5279, HARNESS. @Computing Systems, Vol. 6 ' No. 4 ' Falt 1993 391cally linked when needed and can be updated at runtime to install a newer version of the code. This paper contains a technical description of IK and an evaluation based on two years of experience in using the system to build applications. 1.