the Camelot library extends the C programming language to provide a high-level programming interface to Camelot, a general-purpose distributed transaction system. the Camelot library is implemented as a collection of ...
详细信息
the Camelot library extends the C programming language to provide a high-level programming interface to Camelot, a general-purpose distributed transaction system. the Camelot library is implemented as a collection of C functions and macros. the interface presented by the library also provides a concise high-level model of the services offered by a general-purpose transaction system. A broad overview of the interface is given, and implementation experience is briefly summarized.
Four distributed query processing strategies under consideration for incorporation into the Cronus object-oriented distributedcomputing environment are described. Under Cronus, object storage can be embedded inside a...
详细信息
Four distributed query processing strategies under consideration for incorporation into the Cronus object-oriented distributedcomputing environment are described. Under Cronus, object storage can be embedded inside applications, and facilities are provided to distribute and replicate automatically the data maintained by the application. the performance of the query processing strategies is analyzed within this environment. the resulting evaluation points out the factors to consider in developing query processing strategies for replicated, object-oriented data, and the impact of those factors on the cost and optimality of the strategies. the evaluation led to the adoption of an optimistic, decentralized strategy which increases parallelism and decreases the size of messages at the expense of an increase in the number of messages transferred.
An approach is presented for verifying the communication among modules in distributedcomputing system software. this approach is based on the inductive assertion method. the inference rules used in this approach are ...
详细信息
An approach is presented for verifying the communication among modules in distributedcomputing system software. this approach is based on the inductive assertion method. the inference rules used in this approach are derived for verifying the partial correctness of communicating sequential modules. In this approach, the virtual circuits are used for synchronous message-passing. the advantage of this approach is that proofs of the satisfaction and noninterference are not needed, since no assumptions about the effects of receiving messages are made in the sequential proofs and the uses of shared auxiliary variables and universal assertions are carefully controlled during the process verification. Without these proofs, the user only needs to deal withthe individual modules instead of the entire distributedcomputing system. the technique for detecting the deadlock of a program is given.
the design and implementation of a reliable version of the distributed bitonic sorting algorithm using the application-oriented fault tolerance paradigm on a commercial multicomputer is described. Sorting assertions i...
详细信息
the design and implementation of a reliable version of the distributed bitonic sorting algorithm using the application-oriented fault tolerance paradigm on a commercial multicomputer is described. Sorting assertions in general are discussed and the bitonic sort algorithm is introduced. Faulty behavior is discussed and a fault-tolerant parallel bitonic sort developed using this paradigm is presented. the error coverage and the response of the fault-tolerant algorithm to faulty behavior are presented. Both asymptotic complexity and the results of run-time experimental measurements on an Ncube multicomputer are given. the authors demonstrate that the application-oriented fault tolerance paradigm is applicable to problems of a noniterative nature.
Results obtained in a study of algorithms to implement a distributed-shared memory in a distributed (loosely coupled) environment are described. distributed-shared memory is the implementation of shared memory across ...
详细信息
Results obtained in a study of algorithms to implement a distributed-shared memory in a distributed (loosely coupled) environment are described. distributed-shared memory is the implementation of shared memory across multiple nodes in a distributed system. this is accomplished using only the private memories of the nodes by controlling access to the pages of the shared memory and transferring data to and from the private memories when necessary. Alternative algorithms are analyzed to implement distributed-shared memory. the algorithms are analyzed and compared over a wide range of conditions. Application characteristics are identified which can be exploited by the algorithms. the conditions under which the algorithms analyzed perform better or worse than the other alternatives are shown. Results are obtained via simulation using a synthetic reference generator.
An environment for prototyping distributed applications is described that supports different communication primitives with specified delays, and provides primitives to aid debugging and evaluation. the environment als...
详细信息
An environment for prototyping distributed applications is described that supports different communication primitives with specified delays, and provides primitives to aid debugging and evaluation. the environment also supports heterogeneous computation in which processes can execute on different hardware. Different source languages can be used for coding different modules of the processes. the system has a centralized control and monitoring facility which is based on the Suntools window system. this approach allows users to develop distributed applications using existing languages and packages, as opposed to restricting users to using only specialized specification languages, and extends the type of work done by R. Hayes et al. (1988) by providing primitives to assist in profiling and instrumenting the applications.
A dynamic information-structure mutual-exclusion algorithm is presented for distributed systems whose information structure evolves with time as sites learn about the state of the system through messages. It is shown ...
详细信息
A dynamic information-structure mutual-exclusion algorithm is presented for distributed systems whose information structure evolves with time as sites learn about the state of the system through messages. It is shown that the algorithm achieves mutual exclusion and is free from starvation. Unlike Maekawa-type algorithms, the proposed algorithm is not prone to deadlocks. this is because its information structure forms a staircaselike structure which in conjunction with timestamp ordering eliminates the possibility of deadlock. Besides having the flavor of dynamic information structure, the algorithm adapts itself to heterogeneous or fluctuating traffic conditions to optimize the performance. An asymptotic analysis of the performance of the algorithm for low and heavy traffics of requests for critical section execution is carried out.
the problem of correctly identifying the faulty processors and links in a distributed system where faulty behavior is unrestricted (Byzantine) is examined. A very general class of algorithms called evidence-based diag...
详细信息
the problem of correctly identifying the faulty processors and links in a distributed system where faulty behavior is unrestricted (Byzantine) is examined. A very general class of algorithms called evidence-based diagnosis algorithms is proposed that encompasses all past approaches to the diagnosis problem. An algorithm is presented which is proven optimal in this class. It is further shown that, in the worst case, no evidence-based diagnosis algorithm can guarantee that its diagnosis is both correct and complete, when evidences can be false. It is argued both analytically and from experimental data that in systems of N processors of which t can be faulty, the complexity of this algorithm is O(max(2 to the power of t2, N2)).
An algorithm is presented that detects for termination of distributed computations by an auxiliary controlling agent. the algorithm assigns a weight W, 0 < W &le 1, to each active process and to each message in...
详细信息
An algorithm is presented that detects for termination of distributed computations by an auxiliary controlling agent. the algorithm assigns a weight W, 0 < W &le 1, to each active process and to each message in transit. the algorithm maintains that the sum of all the weights related to the computation is equal to one. the controlling agent terminates the algorithm if its weight equals one. A space-efficient scheme is proposed to encode the weights such that an active process can send a very large number of messages before reaching a weight equal to one. thus, in the proposed encoding scheme, each process and message needs only a small number of bits to encode the weight;the processes can be almost free from the delays of waiting for a supply of weights from the controlling agent.
Concert, a high-level-language approach to programming heterogeneous distributed systems, is described. the Concert model introduces a small set of language extensions into conventional procedural languages. these lan...
详细信息
Concert, a high-level-language approach to programming heterogeneous distributed systems, is described. the Concert model introduces a small set of language extensions into conventional procedural languages. these language extensions support a cooperative peer process model which addresses in the distributed environment the same issues addressed by language semantics in the conventional environment. the Concert implementation provides layered support for these language extensions, bridging a different source of heterogeneity at each layer. A prototype Concert system currently includes C programs running on OS/2 on multiple PS/2s communicating via calls with one another as well as with PL/I programs running on VM/370.
暂无评论