| OCR Text |
Show are orthogonal to regular input/output operations. This model of introspection is the central topic of this thesis. The thesis lays down a groundwork for introspective computers. A light is shed on introspection from many different angles: a formal definition is provided, representative applications are discussed, a working software implementation of introspection is described, and a hardware introspective architecture is developed. Therefore, the title is "The Many Faces of Introspection" . Chapter 2 builds foundations of introspection. The Calculus of Delta Sets is introduced as an abstract model of process execution. The calculus provides a basis on which introspection and related concepts are defined. Executors are executed by interpreters which can be in hardware or in software. Support for introspection required from interpreters is described. Two examples are described to demonstrate some novel capabilities of introspective computers, a real time algorithm for infinite loop detection and a new approach to handle deadlocks. Chapter 3 presents two major classes of applications of introspection: program directing and program augmentation. In program directing, introspection serves as a tool in human/computer interaction. A programmer or a computer user uses directors to monitor and to control executors. In program augmentation, directors are applied on the top of running executors to enhance their performance or to 2 Figure 1.1. The Model of Introspection |