Results 1 - 10
of
18
Distributed Snapshots: Determining Global States of Distributed Systems
- ACM Transactions on Computer Systems
, 1985
"... This paper presents an algorithm by which a process in a distributed system determines a global state of the system during a computation. Many problems in distributed systems can be cast in terms of the problem of detecting global states. For instance, the global state detection algorithm helps to s ..."
Abstract
-
Cited by 929 (5 self)
- Add to MetaCart
This paper presents an algorithm by which a process in a distributed system determines a global state of the system during a computation. Many problems in distributed systems can be cast in terms of the problem of detecting global states. For instance, the global state detection algorithm helps to solve an important class of problems: stable property detection. A stable property is one that persists: once a stable property becomes true it remains true thereafter. Examples of stable properties are “computation has terminated, ” “ the system is deadlocked ” and “all tokens in a token ring have disappeared. ” The stable property detection problem is that of devising algorithms to detect a given stable property. Global state detection can also be used for checkpointing. Categories and Subject Descriptors: C.2.4 [Computer-Communication Networks]: Distributed Systems-distributed applications; distributed databases; network operating systems; D.4.1 [Operating Systems]: Process Management-concurrency; deadlocks, multiprocessing/multiprogramming; mutual exclusion; scheduling; synchronization; D.4.5 [Operating Systems]: Reliability-backup procedures; checkpoint/restart; fault-tolerance; verification
Nested Transactions: An Approach to Reliable Distributed Computing
, 1981
"... Distributed computing systems are being built and used more and more frequently. This distributod computing revolution makes the reliability of distributed systems an important concern. It is fairly well-understood how to connect hardware so that most components can continue to work when others are ..."
Abstract
-
Cited by 435 (1 self)
- Add to MetaCart
Distributed computing systems are being built and used more and more frequently. This distributod computing revolution makes the reliability of distributed systems an important concern. It is fairly well-understood how to connect hardware so that most components can continue to work when others are broken, and thus increase the reliability of a system as a whole. This report addressos the issue of providing software for reliable distributed systems. In particular, we examine how to program a system so that the software continues to work in tho face of a variety of failures of parts of the system. The design presented
Concurrency Control Performance Modeling: Alternatives and Implications
- ACM Transactions on Database Systems
, 1987
"... A number of recent studies have examined the performance of concurrency control algorithms for database management systems. The results reported to date, rather than being definitive, have tended to be contradictory. In this paper, rather than presenting “yet another algorithm performance study,” we ..."
Abstract
-
Cited by 144 (5 self)
- Add to MetaCart
A number of recent studies have examined the performance of concurrency control algorithms for database management systems. The results reported to date, rather than being definitive, have tended to be contradictory. In this paper, rather than presenting “yet another algorithm performance study,” we critically investigate the assumptions made in the models used in past studies and their implica-tions. We employ a fairly complete model of a database environment for studying the relative performance of three different approaches to the concurrency control problem under a variety of modeling assumptions. The three approaches studied represent different extremes in how transaction conflicts are dealt with, and the assumptions addressed pertain to the nature of the database system’s resources, how transaction restarts are modeled, and the amount of information available to the concurrency control algorithm about transactions ’ reference strings. We show that differences in the underlying assumptions explain the seemingly contradictory performance results. We also address the question of how realistic the various assumptions are for actual database systems.
The performance of concurrency control algorithms for database management systems
- Proceedings of the 10th VLDB Conference
, 1984
"... This paper describes a study of the performance of cen-tralized concurrency control algorithms. An algorithm-independent simulation framework was developed in order to support comparative studies of various concurrency control algorithms. We describe this framework in detail and present performance ..."
Abstract
-
Cited by 31 (3 self)
- Add to MetaCart
This paper describes a study of the performance of cen-tralized concurrency control algorithms. An algorithm-independent simulation framework was developed in order to support comparative studies of various concurrency control algorithms. We describe this framework in detail and present performance results which were obtained for what we believe to be a representative cross-section of the many proposed algo-rithms. The basic algorithms studied include four lock-ing algorithms. two timestamp algorithms. and one optimistic algorithm. Also. we briefly summarize stu-dies of several multiple version algorithms and several hierarchical algorithms. We show that. in general, locking algorithms provide the best performance.
Distributed Deadlock Detection Algorithm
- ACM Trans. Database Syst
, 1982
"... This paper employs the same terminology. All words that originate with the author are enclosed in quotation marks at their first mention and appear with initial capital letters throughout ..."
Abstract
-
Cited by 29 (1 self)
- Add to MetaCart
This paper employs the same terminology. All words that originate with the author are enclosed in quotation marks at their first mention and appear with initial capital letters throughout
A distributed algorithm for deadlock detection and resolution
- In Proceedings of the third annual ACM symposium on principles of distributed computing
, 1984
"... This paper presents two distributed algorithms for detecting and resolving deadlocks. By insuring that only one of the deadlock processes will detect it, the problem of resolving the deadlock is simplified. That process could simply abort itself. In one version of the algorithm, an arbitrary process ..."
Abstract
-
Cited by 15 (1 self)
- Add to MetaCart
This paper presents two distributed algorithms for detecting and resolving deadlocks. By insuring that only one of the deadlock processes will detect it, the problem of resolving the deadlock is simplified. That process could simply abort itself. In one version of the algorithm, an arbitrary process detects deadlock; and in a second version, the process with the lowest priority detects deadlock. 1.
Abstractions for Constructing Dependable Distributed Systems
, 1992
"... ions for Constructing Dependable Distributed Systems Shivakant Mishra 1 and Richard D. Schlichting TR 92-19 Abstract Distributed systems, in which multiple machines are connected by a communications network, are often used to build highly dependable computing systems. However, constructing the softw ..."
Abstract
-
Cited by 14 (3 self)
- Add to MetaCart
ions for Constructing Dependable Distributed Systems Shivakant Mishra 1 and Richard D. Schlichting TR 92-19 Abstract Distributed systems, in which multiple machines are connected by a communications network, are often used to build highly dependable computing systems. However, constructing the software required to realize such dependability is a difficult task since it requires the programmer to build fault-tolerant software that can continue to function despite failures. To simplify this process, canonical structuring techniques or programming paradigms have been developed, including the object/action model, the primary/backup approach, the state machine approach, and conversations. In this paper, some of the system abstractions designed to support these paradigms are described. These abstractions, which are termed fault-tolerant services, can be categorized into two types. One type provides functionality similar to standard hardware or operating system services, but with improved ...
An example of stepwise refinement of distributed programs: Quiescence detection
- ACM Transactions on Programming Languages and Systems
, 1986
"... We propose a methodology for the development of concurrent programs and apply it to an important class of problems: quiescence detection. The methodology is based on a novel view of programs. A key feature of the methodology is the separation of concerns between the core problem to be solved and det ..."
Abstract
-
Cited by 14 (0 self)
- Add to MetaCart
We propose a methodology for the development of concurrent programs and apply it to an important class of problems: quiescence detection. The methodology is based on a novel view of programs. A key feature of the methodology is the separation of concerns between the core problem to be solved and details of the forms of concurrency employed in the target architecture and programming language. We begin development of concurrent programs by ignoring issues dealing with concurrency and introduce such concerns in manageable doses. The class of problems solved includes termination and deadlock detection.
Deadlock detection in distributed database systems: A new algorithm and a comparative performance analysis
- VLDB Journal
, 1999
"... . This paper attempts a comprehensive study of deadlock detection in distributed database systems. First, the two predominant deadlock models in these systems and the four different distributed deadlock detection approaches are discussed. Afterwards, a new deadlock detection algorithm is presented. ..."
Abstract
-
Cited by 9 (1 self)
- Add to MetaCart
. This paper attempts a comprehensive study of deadlock detection in distributed database systems. First, the two predominant deadlock models in these systems and the four different distributed deadlock detection approaches are discussed. Afterwards, a new deadlock detection algorithm is presented. The algorithm is based on dynamically creating deadlock detection agents (DDAs), each being responsible for detecting deadlocks in one connected component of the global wait-for-graph (WFG). The DDA scheme is a "selftuning " system: after an initial warm-up phase, dedicated DDAs will be formed for "centers of locality", i.e., parts of the system where many conflicts occur. A dynamic shift in locality of the distributed system will be responded to by automatically creating new DDAs while the obsolete ones terminate. In this paper, we also compare the most competitive representative of each class of algorithms suitable for distributed database systems based on a simulation model, and point out...
Design guidelines for deadlock handling strategies in flexible manufacturing systems
- Intl. Jrnl. of Flexible Manufacturing Systems
, 1997
"... Petri net modeling has clearly illuminated the need for formal structural analysis of Flexible Manufacturing Systems. Petri nets are not, however, the only formal models capable of supporting such analysis. Indeed, it is our position that structural analysis of the FMS is a fundamental design activi ..."
Abstract
-
Cited by 7 (6 self)
- Add to MetaCart
Petri net modeling has clearly illuminated the need for formal structural analysis of Flexible Manufacturing Systems. Petri nets are not, however, the only formal models capable of supporting such analysis. Indeed, it is our position that structural analysis of the FMS is a fundamental design activity which must be defined independently of any particular modeling paradigm. This paper attempts to define FMS structural analysis and provides guidelines for developing FMS Structural Control Policies, SCP's. The FMS is a discrete event system and as such is structurally characterized by its state space. This state space can be represented by a State Transition Diagram, i.e. a directed graph with FMS states being vertices and directed edges being state transition. The objective of structural analysis is to characterize regions of the state space that are structurally sound. Structural Control Policies, SCP's, then assure that the FMS operates within these structurally sound regions. Deadlock has emerged as the paramount structural property for FMS's, and therefore, structural analysis emphasizes characterization of those state space regions that are safe. SCP's must then assure that the FMS operates within its safe subspace.

