scispace - formally typeset
Search or ask a question

Showing papers by "Hans P. Reiser published in 2006"


Proceedings ArticleDOI
02 Oct 2006
TL;DR: A novel algorithm for deterministic thread scheduling based on the interception of synchronisation statements based on shared data are protected by mutexes and client requests are sent to all replicas in total order, which is superior to other existing approaches.
Abstract: Determinism is mandatory for replicating distributed objects with strict consistency guarantees. Multithreaded execution of method invocations is a source of nondeterminism, but helps to improve performance and avoids deadlocks that nested invocations can cause in a single-threaded execution model. This paper contributes a novel algorithm for deterministic thread scheduling based on the interception of synchronisation statements. It assumes that shared data are protected by mutexes and client requests are sent to all replicas in total order; requests are executed concurrently as long as they do not issue potentially conflicting synchronisation operations. No additional communication is required for granting locks in a consistent order in all replicas. In addition to reentrant mutex locks, the algorithm supports condition variables and time-bounded wait operations. An experimental evaluation shows that, in some typical usage patterns of distributed objects, the algorithm is superior to other existing approaches.

27 citations


Book ChapterDOI
14 Jun 2006
TL;DR: A novel approach to fault-tolerance in distributed object-based systems using the fragmented-object model to integrate replication mechanisms into distributed applications and the support of deterministic multithreading in replicated objects is described.
Abstract: This paper describes a novel approach to fault-tolerance in distributed object-based systems. It uses the fragmented-object model to integrate replication mechanisms into distributed applications. This approach enables the use of customised code on a per-object basis to access replica groups and to manage consistency. The addition of fault tolerance to the infrastructure has only little overhead, is fully transparent for clients, and does not require internal modifications to the existing middleware. Semantic annotations at the interface level allow the developer to customise the provision of fault tolerance. Operations can be marked as read-only to allow an execution with weaker ordering semantics or as parallelisable to allow true multithreaded execution. A code-generation tool is provided to automatically produce object-specific fragment code for client access and for replica consistency management, taking into account the annotations, the interface specification, and the non-replicated implementation. A further contribution of our code-generation approach is the support of deterministic multithreading in replicated objects.

13 citations


Journal ArticleDOI
TL;DR: The FORMI architecture integrates fragmented objects into Java RMI without requiring internal modifications to the RMI runtime, and the approach for transparently integrating fault-tolerant objects into .NET Remoting is useful for seamlessly integrating fragmented objects.
Abstract: Distributed object-oriented applications are commonly implemented atop middleware platforms such as CORBA, .NET Remoting, and Java remote method invocation (RMI). These platforms provide a simple mechanism to invoke methods of remote objects. Increasingly more applications are demanding nonfunctional properties such as fault tolerance, high availability, and adaptivity, which require extensions to distributed objects' basic interaction model. A fragmented-object model, such as the one Marc Shapiro proposed, can provide the required flexibility. It's far more generic and flexible than the traditional client-server approach. A fragmented object is a truly distributed object; it consists of multiple fragments located on multiple nodes. Such a model allows arbitrary partitioning of state and functionality on these fragments, and arbitrary internal interaction between fragments of a single object. We have investigated integrating a fragmented-object model into CORBA (AspectIX), which requires internal modifications to the CORBA object request broker. Our approach for transparently integrating fault-tolerant objects into .NET Remoting is also useful for seamlessly integrating fragmented objects. Our FORMI architecture integrates fragmented objects into Java RMI without requiring internal modifications to the RMI runtime

11 citations


Proceedings ArticleDOI
27 Nov 2006
TL;DR: This paper presents a decentralised, fault-tolerant, and scalable quota enforcement protocol that enables the enforcement of upper resource bounds, while being adaptive to changes in resource demands.
Abstract: Grid infrastructures often rely on centralised services for resource management and quota enforcement. This is an efficient approach for small and mid-size grids, but it is a potential bottleneck in case of large-scale infrastructures. Furthermore, additional installation and maintenance work is needed to provide a fault-tolerant solution.This paper presents a decentralised, fault-tolerant, and scalable quota enforcement protocol. By utilising the concept of diffusive load balancing, unused resource quotas dedicated to projects are equally balanced over all supporting nodes. This enables the enforcement of upper resource bounds, while being adaptive to changes in resource demands.