Order and Containment in Concurrent System Design

John Sidney Davis II

PhD. thesis, Memorandum UCB.ERL M00/47, Electronics Research Laboratory, University of California, Berkeley, Fall, 2000.



This dissertation considers the difficulty of modeling and designing complex, concurrent systems. The term concurrent is used here to mean a system consisting of a network of communicating components. The term complex is used here to mean a system consisting of components with different models of computation such that the communication between different components has different semantics according to the respective interacting models of computation.

Modeling and designing a concurrent system requires a clear understanding of the types of relationships that exist between the components found within a concurrent system. Two particularly important types of relationships found in concurrent systems are the order relation and the containment relation. The order relation represents the relative timing of component actions within a concurrent system. The containment relation facilitates human understanding of a system by abstracting a system's components into layers of visibility.

The consequence of improper management of the order and containment relationships in a complex, concurrent system is deadlock. Deadlock is an undesirable halting of a system's execution and is the most challenging type of concurrent system error to debug. The contents of this dissertation show that no methodology is currently available that can concisely, accurately and graphically model both the order and containment relations found in complex, concurrent systems. The result of the absence of a method suitable for modeling both order and containment is that the prevention of deadlock is very difficult. This dissertation offers a solution to this problem with the introduction of the diposet.