José M. Piquer

Learn More
Omniscient debuggers make it possible to navigate backwards in time within a program execution trace, drastically improving the task of debugging complex applications. Still, they are mostly ignored in practice due to the challenges raised by the potentially huge size of the execution traces. This paper shows that omniscient debugging can be realistically(More)
Distributed symbolic computations involve the existence of <italic>remote references</italic> allowing an object, local to a processor, to designate another object located on another processor. To reclaim inaccessible objects is the non trivial task of a distributed Garbage Collector (GC). We present in this paper a new distributed GC algorithm which(More)
This paper argues that algorithmic skeletons are a suitable programming model for multi-core architectures. The high-level abstractions offered by algorithmic skeletons provide a simple way for non-parallel programmers to address parallel programming. Previous algorithmic skeleton frameworks and libraries have addressed distributed computing environments(More)
In new distributed systems, object mobility is usually allowed and is sometimes used by the underlying object manager system to benefit from object access locality. On the other hand, in-transit references to objects can exist at any moment in asynchronous distributed systems. In the presence of object mobility and in-transit references, many garbage(More)
We present a contribution on dynamic load balancing for distributed and parallel object-oriented applications. We specially target on peer to peer systems and its capability to distribute parallel computation, which transfer large amount of data (called intensive-communicated applications) among large number of processors. We explain the relation between(More)
We present a contribution on dynamic load balancing for distributed and parallel object-oriented applications. We specially target peer-to-peer systems and their capability to distribute parallel computation. Using an algorithm for active-object load balancing, we simulate the balance of a parallel application over a peer-to-peer infrastructure. We tune the(More)
Altering the semantics of programs has become of major interest. This is due to the necessity of adapting existing software, for instance to achieve interoperability between off-the-shelf components. A system allowing such alterations should operate at the bytecode level in order to preserve portability and to be useful for pieces of software whose source(More)
Java mobile object systems generally rely on Java RMI (Remote Method Invocation) to transmit objects between remote sites. As a consequence, the semantics of parameter passing and value returning is restricted to the choices made by the designers of RMI. Nevertheless, some applications require more adaptability in this regard. Resources (i.e., passive(More)