Towards a Graphical Deadlock Analysis Tool
Abstract
The purpose of this thesis was to implement a graphical tool to model and analyze operating system deadlocks using Process-Resource graphs. The topics covered as background and context for the implementation in this work consist of introductions to: (1) operating system deadlocks, including algorithms for their detection and analysis; (2) graph drawing algorithms, graph editors, and graph browsers; (3) the Sequent S/81 computer system including its architecture and operating systems; ( 4) the X Window System including its definition, fundamental components, client/server interaction, and software layers; (5) the OSF/Motif toolkit including its architecture, widget set, and programming structure; and (6) the MotifApp application framework. The programming part of this work consisted of the design and implementation of the modeling and analysis tool referred to as Prograph including its class hierarchy, data structures, widget hierarchy, and interface objects. The Prograph program, coded in the C++ language, has about 15,000 lines of code with 3 major class hierarchies, 56 classes, and 394 member and non-member functions. The Prograph program enables users to model operating system Process-Resource graphs rapidly, analyze the graphs, and then view the different stages of the deadlock analysis. The deadlock representation and analysis tool Prograph was prototypically evaluated by the students in the graduate level Operating Systems II class as well as a number of graduate students at the Computer Science Department of Oklahoma State University. The feedback obtained from the users of the Prograph program indicated that it was functional and useful for modeling and analyzing Process-Resource graphs.
Collections
- OSU Theses [15752]