Results 11  20
of
43
Mutual Exclusion Revisited
"... A family of four mutual exclusion algorithms is presented. Its members vary from a simple threebit linear wait mutual exclusion to the fourbit firstcome firstserved algorithm immune to various faults. The algorithms are based on a scheme similar to the Morris's solution of the mutual exc ..."
Abstract

Cited by 8 (1 self)
 Add to MetaCart
A family of four mutual exclusion algorithms is presented. Its members vary from a simple threebit linear wait mutual exclusion to the fourbit firstcome firstserved algorithm immune to various faults. The algorithms are based on a scheme similar to the Morris's solution of the mutual exclusion with three weak semaphores. The presented algorithms compare favorably with equivalent published mutual exclusion algorithms in their program's size and the number of required communication bits.
Process structuring
 Computing Surveys
, 1973
"... The concept of “process ” has come to play a central role in many efforts to master the complexity of large computer systems. The purpose of this paper is to discuss useful methods of structuring complex processes, and to relate these to the problems of improving the quality of large computer system ..."
Abstract

Cited by 8 (1 self)
 Add to MetaCart
(Show Context)
The concept of “process ” has come to play a central role in many efforts to master the complexity of large computer systems. The purpose of this paper is to discuss useful methods of structuring complex processes, and to relate these to the problems of improving the quality of large computer systems. Two distinct ways of structuring systems are presented, namely, process combination, and process abstraction; these are then used to discuss such topics as concurrency, synchronization, multiprogramming, interpreters, and programmable processors. This discussion is based on a set of precise definitions for such concepts as “process,” “processor, ” “computation, ” “combination, ” and “abstraction. ” The paper relates these definitions to both current research and practical applications, with particular concern for the problems of the performance, reliability, and modifiability of computer systems. Key words and phrases: sequential process, cooperating processes, asynchronous processes, parallelism, complexity, program, processor, interpreter, hierarchical structures, abstraction, refinement.
Fischer's Protocol in Timed Process Algebra
, 1994
"... Timed algebraic process theories can be developed with quite different purposes in mind. One can aim for theoretical results about the theory itself (completeness, expressiveness, decidability), or one can aim for practical applicability to nontrivial protocols. Unfortunately, these aims do not go ..."
Abstract

Cited by 8 (2 self)
 Add to MetaCart
Timed algebraic process theories can be developed with quite different purposes in mind. One can aim for theoretical results about the theory itself (completeness, expressiveness, decidability), or one can aim for practical applicability to nontrivial protocols. Unfortunately, these aims do not go well together. In this paper we take two theories, which are probably of the first kind, and try to find out how well suited they are for practical verifications. We verify Fischer's protocol for mutual exclusion in the settings of discretetime process algebra (ACP dt ) and realtime process algebra (ACP ur ). We do this by transforming the recursive specification into an equivalent linear specification, and then dividing out the maximal bisimulation relation. The required mutual exclusion result can then be found by reasoning about the obtained process graph. Finally, we consider the ease of the verification, and ways to adapt the theory to make it more practical. It will turn out that the...
The Raven Kernel: a Microkernel for Shared Memory Multiprocessors
, 1993
"... This report presents a new operating system kernel which addresses the above factors for a shared memory multiprocessing environment. This design is geared specifically towards uniformly shared memory architectures, and not nonuniform architectures (NUMA) or distributed 1 ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
(Show Context)
This report presents a new operating system kernel which addresses the above factors for a shared memory multiprocessing environment. This design is geared specifically towards uniformly shared memory architectures, and not nonuniform architectures (NUMA) or distributed 1
Formal Verification of Concurrent Programs Based on Type Theory
, 1998
"... Interactive theorem proving provides a general approach to modeling and verification of both finitestate and infinitestate systems but requires significant human efforts to deal with many tedious proofs. On the other hand, modelchecking is limited to some application domain with small finitestate ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
(Show Context)
Interactive theorem proving provides a general approach to modeling and verification of both finitestate and infinitestate systems but requires significant human efforts to deal with many tedious proofs. On the other hand, modelchecking is limited to some application domain with small finitestate space. A natural thought for this problem is to integrate these two approaches. To keep the consistency of the integration and ensure the correctness of verification, we suggest to use type theory based theorem provers (e.g. Lego) as the platform for the integration and build a modelchecker to do parts of the verification automatically. We formalise a verification system of both CCS and an imperative language in the proof development system Lego which can be used to verify both finitestate and infinitestate problems. Then a modelchecker, LegoMC, is implemented to generate Lego proof terms for finitestate problems automatically. Therefore people can use Lego to verify a general problem ...
Software Failure Avoidance Using Discrete Control Theory
, 2009
"... When I shifted my research interest from the theoretical study of discrete event systems to applications of this theory, few believed that the marriage of Discrete Control Theory to computer systems would be successful. Fortunately, Terence Kelly was one of them. I am deeply grateful for his longte ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
(Show Context)
When I shifted my research interest from the theoretical study of discrete event systems to applications of this theory, few believed that the marriage of Discrete Control Theory to computer systems would be successful. Fortunately, Terence Kelly was one of them. I am deeply grateful for his longterm encouragement, support, and commitment to my research. I was also fortunate to have collaborated with Scott Mahlke and Manjunath Kudlur, who helped me to bridge the gap between theory and practice by helping me to embody my research contributions in a working prototype. Of course, my deepest gratitude also goes to my advisor, Stéphane Lafortune, for his guidance on research and beyond throughout the years. This dissertation would not have been possible without these collaborators. In addition, I would like to thank the following people who provided help for the two projects discussed in this dissertation. Sharad Singhal, Sven Graupner, and Peter Chen made useful suggestions at the outset of the IT automation workflow
Title: Parallel Programming: Operational Model and Detection of Parallelism
"... : Four types of machine design that permit parallel computation are described briefly, and attention is focussed on multiprocessor hardware and programs which have portions executed concurrently. The functions which must be available from the operating system in order to support parallel programming ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
: Four types of machine design that permit parallel computation are described briefly, and attention is focussed on multiprocessor hardware and programs which have portions executed concurrently. The functions which must be available from the operating system in order to support parallel programming are dealt with first. These divide into resource synchronization (mutual exclusion) and action synchronization. The former deals with locks or semaphores, and a theorem is proved which gives a condition on the set of locks of a program which guarantees that deadlock will not occur. Action synchronization is then considered in the context of a blockstructured language with parallel execution In order to provide for versatile program structures while maintaining safety from erroneous programming, it becomes evident that the system must have primitives of more than one type. Next, an analytic model of the behavior of a parallel program is constructed. The costs of computer time and elapsed ti...