Holistic debugging - enabling instruction set simulation for software quality assurance

Albertsson, Lars (2006) Holistic debugging - enabling instruction set simulation for software quality assurance. In: Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS), September 2006, Monterey, California.



We present holistic debugging, a novel method for observing execution of complex and distributed software. It builds on an instruction set simulator, which provides reproducible experiments and non-intrusive probing of state in a distributed system. Instruction set simulators, however, only provide low-level information, so a holistic debugger contains a translation framework that maps this information to higher abstraction level observation tools, such as source code debuggers. We have created Nornir, a proof-of-concept holistic debugger, built on the simulator Simics. For each observed process in the simulated system, Nornir creates an abstraction translation stack, with virtual machine translators that map machine-level storage contents (e.g. physical memory, registers) provided by Simics, to application-level data (e.g. virtual memory contents) by parsing the data structures of operating systems and virtual machines. Nornir includes a modified version of the GNU debugger (GDB), which supports non-intrusive symbolic debugging of distributed applications. Nornir's main interface is a debugger shepherd, a programmable interface that controls multiple debuggers, and allows users to coherently inspect the entire state of heterogeneous, distributed applications. It provides a robust observation platform for construction of new observation tools.

Item Type:Conference or Workshop Item (Paper)
ID Code:446
Deposited By:Vicki Carleson
Deposited On:18 Jan 2007
Last Modified:18 Nov 2009 15:56

Repository Staff Only: item control page