In this paper, we present an analysis of remote objects in Microsoft’s Shared Source Common Language Infrastructure. The contribution of our work is threefold. First, we analyze the behavior of remote objects. We find that the basic behavior of these objects significantly differ from the ones of local objects, which have been thoroughly studied in the past. We also study the behavior of remote objects with respect to different activation modes (i.e. single-call, singleton, and client-activated). Second, based on those behavioral differences, we study the impacts of managing remote objects with a generational garbage collector that is designed essentially to manage local objects. We find that the garbage collection efficiency degrades significantly when the heap is interspersed with both local and remote objects. Third, we suggest various optimization techniques to improve the garbage collection efficiency in distributed objects environments.
['Witawas Srisa-an', 'Mulyadi Oey']
Remote Objects: The Next Garbage Collection Challenge.