Holistic debugging - enabling instruction set simulation for software quality assurance
Number of Authors: 1
2006 (English)Conference paper (Refereed)
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.
Place, publisher, year, edition, pages
2006, 1. , 8 p.
Computer and Information Science
IdentifiersURN: urn:nbn:se:ri:diva-21178OAI: oai:DiVA.org:ri-21178DiVA: diva2:1041212
Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS)